Учебно-методическое пособие для студентов и слушателей системы повышения



бет31/75
Дата16.03.2023
өлшемі1,62 Mb.
#74783
түріУчебно-методическое пособие
1   ...   27   28   29   30   31   32   33   34   ...   75
Байланысты:
word Programmirovanie na yazyke C

{n} ровно n повторений; {n,m} от n до m повторений.
При задании квантификаторов для последовательности применяется груп- пирование c помощью круглых скобок.
Примеры простых шаблонов для поиска: семизначного номера телефона вида NNN-NN-NN:
[0-9]{3}-[0-9]{2}-[0-9]{2} или \d{3}-\d{2}-\d{2} ;
номера автомобиля (4 цифры, 2 буквы, дефис, цифра от 1 до 7):
\d{4}[AВЕIKMHOPCTX]{2}-[1-7] ;
Регулярные выражения в .NET реализуются несколькими классами прост- ранства имен System.Text.RegularExpressions. Основной класс Regex. Возмож- ны два способа обработки текста: 1) вызов статических методов класса Regex с передачей в качестве параметров исходной строки и шаблона; 2) создание объекта Regex с передачей шаблона в конструктор класса.
Некоторые методы класса Regex.
IsMatch(str, reg) – поиск вхождения подстроки с шаблоном reg в строку str; Split(text) – разбиение текста text на массив строк по шаблону-разделителю; Match или Matches – извлечение из текста одного или всех вхождений.
Метод Match возвращает одноименный объект Match с информацией о сов- падении. Метод Matches возвращает коллекцию MatchCollection, в которую вхо- дят объекты Match для всех совпадений в проанализированном тексте.


Пример 1


Проверка телефонного номера вида NNN-NN-NN.



  1. Создадим проект сon181. Наберем код программы:

using System;
// подключаем пространство имен System.Text.RegularExpressions
using System.Text.RegularExpressions; class Program
{
static void Main()
{
Console.WriteLine("Введите номер телефона"); String str= Console.ReadLine();
// создаем шаблон регулярного выражения
String reg = @"^\d{3}‐\d{2}‐\d{2}$";
// проверяем совпадение введенной строки с шаблоном
if (Regex.IsMatch(str, reg)) Console.WriteLine("{0} похоже", str);
else Console.WriteLine("{0} ошибка", str); Console.ReadKey();


Достарыңызбен бөлісу:
1   ...   27   28   29   30   31   32   33   34   ...   75




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет