Рекомендуется: экспортировать файлы Excel в программе ASP, проведенного в экземпляре Одним из способов использования Excel в ASP является связь файла Excel в качестве базы данных, а операция аналогична операции базы данных доступа. Но этот метод не всегда полезен, должно быть, что Excel не является реляционной базой данных. Для фиксированного формата,
Что такое regexp в ASP
'Название персонажа Проверка
| Ниже приведено цитируемое содержание: Public Function CheckName (Str) CheckName = true Dim Rep, Pass Установить rep = new Regexp 'Создать регулярное выражение. Rep.global = true 'установить глобальную доступность. Rep.ignorecase = true 'установить, чтобы отличить конкретный случай, чувствительный к случаю персонажа 'SET MODE. Rep.pattern = [U0009U0020U0022-U0028U002C-U002EU003A-U003FU005BU005CU0060U007CU007EU00FFUE5E5] Установить Pass = rep.execute (str) 'Выполните обычный поиск выражения на указанной строке. Если pass.count <> 0, то CheckName = false 'response.write (checkname) 'response.end () Установить rep = ничего Конечная функция |
Когда мы производим веб-сайты, особенно различные веб-сайты электронной коммерции, мы сначала попросим пользователей заполнить некоторые формы, чтобы получить различную информацию о зарегистрированных пользователях, поскольку пользователи могут вводить различную информацию, а некоторые данные, которые не соответствуют требованиям, приведут к ненужным проблемам для нашего контрольного процессора ASP и даже привести к некоторым проблемам безопасности на веб-сайте. Поэтому перед сохранением этой информации в базе данных веб -сайта мы должны проверить законность ввода данных этими пользователями, чтобы последующие программы могли выполняться безопасно и плавно. Таким образом, мы обычно пишем программу проверки ASP на бэкэнд, чтобы проанализировать, являются ли данные, введенные пользователем законными.
Некоторые люди могут спросить, не могут использовать JavaScript, работающий на клиенте, чтобы проверить пользовательские данные лучше и быстрее? Действительно, в большинстве случаев это нормально, почему в большинстве случаев? Поскольку JavaScript, который вы пишете, может быть не полностью нормальным для работы с IE и Netscape одновременно, поскольку JScript Microsoft не совсем такой же, как JavaScript, а некоторые браузеры не обязательно совместим с Microsoft и Netscape, поэтому вполне вероятно, что Javascript на клиенте не будет точно проверять различные данные, введенные пользователем. Программа ASP работает на стороне сервера, но она связана с средой вашего сервера. Независимо от того, что такое браузер, клиент, нет никакой разницы в вашей программе ASP, поэтому выбор использования программы ASP Backend для проверки законности данных - хороший выбор.
При использовании ASP для проверки легитимности данных бэкэнда некоторые люди написали много функций для реализации его для удовлетворения проверки данных в разных средах. Например, если мы хотим проверить, является ли адрес URL -адреса, введенный пользователем законным, мы можем написать кусок кода для анализа информации, введенной пользовательским символом один за другим. Если объем информации, подлежащей анализе, невелик, с ней легче справиться. Если условия анализа изменятся, это будет несчастно. Мы не только должны писать очень длинный и громоздкий код, но и эффективность работы чрезвычайно низкая. Есть ли хорошее решение? Да, это объект регулярного выражения, предоставляемый VBScriptP5.0. Пока установлен ваш сервер. Фактически, регулярные выражения были первоначально запатентованы под UNIX, особенно на языке Perl. Именно из -за мощных функций регулярных выражений Microsoft медленно портирует объекты регулярного выражения в систему окон и использует их.
Для объектов регулярного выражения мы можем легко проверить законность различных данных.
Во -первых, давайте поймем, что именно является объектом регулярного выражения VBScript. Давайте сначала посмотрим на программу:
| Ниже приведено цитируемое содержание: Функция checkexp (patrn, strng) Dim Regex, Match 'создать переменные. Установить regex = new Regexp 'Создать регулярное выражение. regex.pattern = Set Patrn 'Режим. regex.ignorecase = true 'Установите, чувствительный ли символ. regex.global = true 'установить глобальную доступность. Matches = regex.test (strng) 'выполнить поиск. Checkexp = совпадения Конечная функция |
В этой программе мы видим, что новая Regexp может использоваться для получения объекта регулярного выражения, а затем объекту присваивается регулярное соответствие шаблона, то есть сообщать об объекте регулярного выражения, какой шаблон вы хотите соответствовать, а затем используйте тест метода, чтобы определить, соответствуют ли данные для обработки данных, который мы даем шаблон. Если это не совпадает, это означает, что данные, которые необходимо обрабатывать, не являются законными данными, которые реализуют проверку законности данных. Мы видим, что, используя правильно разработанную соответствующую шаблон, мы можем легко проверить партию данных в формате.
Тем не менее, объект регулярного выражения в VBScript 5.0 имеет много других методов и свойств, таких как метод reply (). Используя его, мы можем быстро внедрить модный форум в стиле UBB и BBS Online. Это не в пределах нашего объема обсуждения. Мы обсудим это позже. Давайте посмотрим на обычно используемые методы и свойства объектов регулярного выражения в проверке данных:
Общие методы: выполнить метод
Описание: Выполните обычный поиск выражения на указанной строке.
Синтаксис: Object.Execute (String) Синтаксис метода выполнения включает в себя следующие части:
Объект: Требуется. Всегда название объекта Regexp.
Строка: Требуется. Текстовая строка, на которой должно быть выполнено регулярное выражение.
Описание: Паттерн дизайна регулярного поиска выражения устанавливается через шаблон объекта Regexp. Метод выполнения возвращает
Коллекция совпадает, которая содержит каждый соответствующий объект соответствия, найденной в строке. Если совпадение не найдено, Exepute возвращает коллекцию пустых совпадений.
Метод испытаний
Описание: выполняет обычный поиск выражения на указанной строке и возвращает логическое значение, указывающее, был ли найден соответствующий шаблон.
Синтаксис: object.test (String)
Синтаксис метода испытаний включает в себя следующие части:
Объект: Требуется. Всегда название объекта Regexp.
Строка: Требуется. Текстовая строка для выполнения обычного поиска выражения.
ПРИМЕЧАНИЕ. Фактический шаблон обычного поиска выражения устанавливается через свойство шаблона объекта Regexp. Свойство Regexp.global не влияет на метод испытания. Если сопоставленный шаблон найден, метод испытания возвращает True; В противном случае он возвращает ложь.
Общие свойства: глобальные свойства
Описание: Устанавливает или возвращает логическое значение, которое указывает, соответствует ли шаблону все или только первое в течение всей строки поиска.
Синтаксис: object.global [= true | ЛОЖЬ ]
Параметр объекта всегда является объектом Regexp. Если поиск применяется ко всей строке, глобальное свойство имеет значение TRUE, в противном случае его значение неверно. Настройка по умолчанию верно.
Атрибут игнорирования
Описание: Устанавливает или возвращает логическое значение, указывающее, является ли поиск в режиме чувствительным к корпусу.
Синтаксис: object.ignorecase [= true | ЛОЖЬ ]
Параметр объекта всегда является объектом Regexp. Если поиск чувствителен к случаям, свойство невежества является ложным; в противном случае, правда. Значение по умолчанию верно.
Свойства шаблона
Описание: Устанавливает или возвращает обычный рисунок регулярного выражения. Это самый важный атрибут, и мы в основном устанавливаем этот атрибут для достижения проверки данных.
Синтаксис: object.pattern [= searchString]
Синтаксис свойства шаблона содержит следующие части:
Объект: Требуется. Всегда переменная объекта regexp.
SearchString: необязательно. Обычное выражение строки ищет. Он может содержать различные символы регулярного выражения, установленные в частичной таблице.
Настройки: Специальные символы и последовательности используются при написании шаблонов для регулярных выражений. В следующей таблице описываются символы и последовательности, которые могут быть использованы и приводят примеры.
Описание символа: отметьте следующий символ как особый символ или буквальное значение. Например, N соответствует символу n. n Сопоставление линейных перерывов. последовательность/матч, (матч.
^: Сопоставьте начальную позицию ввода.
$: Сопоставьте конец ввода.
*: Сопоставьте предыдущий символ нуля или несколько раз. Например, Zo* может соответствовать Z и зоопарку.
: Сопоставьте предыдущего персонажа один или более раз. Например, ZO может соответствовать зоопарку, но не Z.
?: Сопоставьте предыдущий персонаж Zero или один раз. Например, а? может совпадать с вещей никогда.
.: Сопоставьте любого персонажа, кроме разрывов линии.
(шаблон) Сопоставьте шаблон и запомните матч. Соответствующее подстроение можно получить из полученной коллекции совпадений с использованием элемента [0] ... [n]. Если вы хотите соответствовать персонажам кронштейна (и), вы можете использовать (или).
x | y: совпадать X или y. Например, Z | еда может соответствовать Z или еде. (z | f) ood совпадает с зоопарком или едой.
{n}: n-неотрицательное целое число. Совпадать ровно n раз. Например, o {2} не может совпадать с O в BOB, но может соответствовать первым двум O в FoooOood.
{n,}: n-неотрицательное целое число. Совпадать как минимум n раз. Например, o {2,} не совпадает с O в Бобу, а все в Foooood. o {1,} эквивалентен o. o {0,} эквивалентно o*.
{n, m}: m и n являются неотрицательными целыми числами. Совместите хотя бы n раз, до M Times. Например, O {1,3} соответствует первой три ОС в Fooooood. o {0,1} эквивалентен O ?.
[xyz]: набор символов. Соответствует одному из персонажей в скобках. Например, [ABC] совпадает с простой.
[^xyz]: негативный набор символов. Совместите любые персонажи, не в этом кронштейне. Например, [^ABC] может соответствовать P на простом.
[AZ]: представляет персонажа в определенном диапазоне. Соответствует любому символу в указанном интервале. Например, [AZ] соответствует любым строчным алфавитным характером между A и z.
[^MZ]: негативный интервал символов. Соответствует символам, которые не находятся в пределах указанного интервала. Например, [MZ] соответствует любому персонажу, который не находится между M и z.
B: Сопоставьте границу слова, то есть положением между словом и пространством. Например, ERB совпадает с ER никогда, но не соответствует ER в глаголе.
Б: Сопоставление с не словными границами. EA*RB соответствует уху никогда рано.
D: соответствует числовому персонажу. Эквивалентно [0-9].
D: соответствует нечетным персонажам. Эквивалентно [^0-9].
F: Сопоставления страниц перерывы.
N: соответствует линейному разрыву персонажа.
R: соответствует персонажу возврата кареты.
S: соответствует любым белым символам, включая пробелы, вкладки, разрывы страниц и т. Д. Эквивалент [FNRTV].
S: соответствует любому нелодному персонажу. Эквивалентно [^ fnrtv].
T: соответствует символу TAB.
V: соответствует вертикальным символам вкладок.
W: соответствует любому слову персонажу, включая подчеркивание. Эквивалентно [a-za-z0-9_].
W: соответствует любому не словному персонажу. Эквивалентно [^a-za-z0-9_].
NUM: соответствует NUM, где NUM является положительным целым числом. Цитируйте обратно, чтобы запомнить матчи. Например, (.) 1 соответствует двум последовательным идентичным символам.
N: Match N, где n - октальное значение передачи кода. Значение передачи восьмиугольника должно быть длиной 1, 2 или 3 чисел.
Например, как 11, так и 11 соответствуют вкладке. 011 является эквивалентом 01 и 1. Октальное значение передачи кода не должно превышать 256. В противном случае только первые два символа считаются частью выражения. Позволяет использовать код ASCII в регулярных выражениях.
XN: Match N, где n является значением передачи шестнадцатеричного кода. Значение передачи шестнадцатеричного кода должно составлять ровно два числа длиной. Например, x41 соответствует A. x041 эквивалентен x04 и 1. позволяет использовать код ASCII в регулярных выражениях.
Хорошо, это обычно используемые методы и атрибуты. Приведенный выше синтаксис уже очень подробный, поэтому не нужно говорить об этом. Затем давайте посмотрим, как использовать эти методы и атрибуты, чтобы проверить легитимность данных в конкретных примерах. Давайте приведем пример. Например, мы хотим проверить ввод электронной почты пользователем. Итак, какие данные считаются законным электронным письмом? Я могу ввести это: [email protected], конечно, я также введу это: [email protected], но такой вклад незаконен: xxx @@ com.cn или@xxx.com.cn и т. Д., Так что мы получаем законной адрес электронной почты, который должен, по крайней мере, соответствовать следующим условиям:
1. Должен содержать один и только один символ @
2. Должен содержать хотя бы один не более трех символов.
3. Первый персонаж не должен быть @ или.
4. @. Или. @ Не допускается
5. Финал не должен быть персонажем @ или.
Таким образом, на основе приведенных выше принципов и синтаксиса в таблице выше, мы можем легко получить необходимый шаблон следующим образом: (w) [@] {1} (w) [.] {1,3} (w)
Затем давайте внимательно проанализируем этот шаблон. Во -первых, W означает, что начальный характер электронной почты может быть только словесным символом, содержащим подчеркивание, так что третье условие выполняется; [@] {1} означает, что символ должен быть сопоставлен в электронном письме и может быть сопоставлен только один раз, и условие, которое одно соблюдается; То же самое [.] {1,3} означает, что не менее 1 соответствует не более 3 символам в электронном письме. , удовлетворяя второе условие; Последний (w) шаблона указывает на то, что конечный символ может быть только словесным символом, содержащим подчеркивание, удовлетворяя условие пять; (w) В середине шаблона соответствует условию четырех.
Затем мы просто называем функцию checkexp ((w) [@] {1} (w) [.] {1} (w), строка, которая должна быть проверена). Если верно возвращается, это означает, что данные являются законными, в противном случае они будут неверными. Как насчет этого, это просто. Мы также можем написать шаблон для проверки идентификационного номера: ([0-9]) {15}; шаблон для проверки URL: ^http: // {1} ((w) [.]) {1,3} и т. Д.; Мы видим, что эти шаблоны предоставляют нам очень хорошие многократные модули. Используя различные шаблоны, предоставленные нами или другими, мы можем легко и быстро проверить законность данных. Я считаю, что вы обязательно напишете очень общий шаблон.
Таким образом, мы можем проверить законность различных данных, настраивая различные шаблоны. Следовательно, наиболее важным атрибутом в объекте регулярного выражения является атрибут шаблона. Только по -настоящему освоив этот атрибут, вы можете свободно использовать объект регулярного выражения для обслуживания нашей проверки данных.
Используйте те же правила
| Ниже приведено цитируемое содержание: string str = <img src =/upimg/allimg/081024/0851350.jpg> <img src =/upimg/allimg/081024/0851351.jpg> <img src =/upimg/allimg/081024/0851352. Regex reg = new Regex (<imgs src = (['|]?) (S .w) (1)); MatchCollection MC = Reg.Matches (Input); Foreach (Match M в MC) { Tb_result.appendtext (string.format ({0} is matchrn, m.groups [0])); для (int i = 0; i <m.groups.count; i) { // Адрес изображения должен быть M.Groups [2]. Response.write (string.format (group [{0}] = {1} rn, i, m.groups [i] .value)); } } |
// Сколько там матчей
Response.write (mc.count.tostring ());
Поделиться: как использовать программу ASP для прочтения мирового рейтинга веб -сайта Всякий раз, когда Alexa Randing обновляется, мне нужно разобраться в рейтингах всех связанных сходных сайтов и увидеть обновления рейтинга этих конкурирующих сайтов. Я сделал больше, и я чувствую себя раздраженным. Хотя у меня есть только более 30 веб -сайтов, я чувствую себя немного уставшим после просмотра их один за другим. Поэтому я хочу