(?i) - case insensitive flag \\b - word boundary (\\w+) - 1 or more word characters (A-Z, a-z, 0-9) in a captured group \\b - word boundary [\\w\\W]* - 0 or more word or non-word characters \\b -...
\n относится к n -й группе захвата . Однако в вашем regex нет групп захвата, на которые можно было бы ссылаться. Вы, вероятно, хотите: (\w)\1 demo Как строка Java, которая будет (\\w)\\1 .
В /^\/products\/(?:([^\/]+?))(?:\/([^\/]+?))?\/?$/i, Первый / является разделителем regex. ^ относится к началу строки /products/ (?: Do not capture group ([^\/]+?) capture to \1, any string of...
Если вы хотите поймать только первую цифру, поместите первую цифру в группу и сопоставьте rest цифр за пределами группы, например: /^(\d)\d*$/ Причина, по которой вы ловите только последнюю цифру,...
Просто сделайте вторую часть необязательной, используя квантор ? : - r'.*?(\d*)\s(good|bad)(?:.*\:\s(\d*))?' Использование (?:.*\:\s(\d*))? делает шаблон .*\:\s(\d*) необязательным. Как ? означает...
Вы можете просто использовать метод matches класса String . Вот пример проверки email: if(!email.matches(^([a-zA-Z0-9_.\\-+])+@(([a-zA-Z0-9\\-])+\\.)+[a-zA-Z0-9]{2,4}$)) { setErrorText(wrong mail);...
Это похоже на то, что можно легко сделать с помощью парсера DOM : libxml_use_internal_errors(true); $dom = new DOMDocument; $dom->load('http://davidelks.com/'); $h1 =...
Если вы ищете текст в гиперссылках, ваш лучший выбор- SimpleHTMLDom . Вот краткий пример: $html = file_get_html('http://www.amazon.com/'); foreach($html->find('a') as $element) echo...
Группа, начинающаяся с (?: , как вы говорите, не является группой захвата . Это означает, что соответствующая часть не хранится в группе захвата, доступной для последующего извлечения. Если группа...
Я использую это для экранирования строки при создании динамического regex: var specials = /[*.+?|^$()\[\]{}\\]/g; var url_re = RegExp(url.replace(specials, \\$&));
Воспользуйся Regex yourRegex = new Regex(@\(.*\)|\[.*\]); Моя версия использует только совпадения, в то время как ваша использует группы, которые немного дороже и не нужны для того, чего вы...
У меня есть более простое решение. if(filter_var($email,FILTER_VALID_EMAIL)) { //true } этого было бы достаточно в большинстве случаев, это фактически запускает регулярную проверку C, которая, в...
Попробуйте с этим: (?=\S*\d)(?=\S*[^\d\s])(?!.*[.\\])(?<=\s|^)\S{4,8}(?=\s|$) Демонстрация Объясненный : Базовым regex является (?<=\s|^)\S{4,8}(?=\s|$) , который соответствует не whitespace...
(?:[1-9]|(?<=0))\d{4}(?=\?$) Увидеть это в действии Идея в том, чтобы: Либо совпадают с цифрой 1-9 ( [1-9] ), либо ( | ) существование 0 ( (?<=0) ) Далее следуют четыре цифры \d{4} Далее...
Поскольку вы используете строковый литерал, вам нужно избегать каждой обратной косой черты: (?:\\+\\d+)?\\s*(?:\\(\\d+\\)\\s*(?:[/–-]\\s*)?)?\\d+(?:\\s*(?:[\\s/–-]\\s*)?\\d+)* Другим решением было...
В принципе, вы хотите обрезать свою строку перед каждым B или D? ....split(/(?=[BD])/) Дает тебе [MTM, DKPSQY, DKIEAELQ, DICN, DVLELL, DSKG, DYFRYLSEVASG, DN]
Могу я спросить, почему вы пытаетесь сбежать от правильного родителя? Я попробовал ваш запрос без побега перед правильным родителем, и он сработал : '{text: /.*:)/}' В качестве альтернативы, если...
С помощью вашей удобной функции все, что вам нужно сделать, это использовать match с вашими 3 шаблонами: let regex1 = ^[1234]+$ let regex2 = ^[abcd]+$ let regex3 = ^ab([123])$ let testText v = match...
Если вы можете использовать утверждения look-ahead и look-behind, вы можете использовать этот regex для сопоставления между | и ] : (?<=\|\s)[0-9]+(?=]) В C#, вы можете использовать этот код:...
Без Regex (потому что Regex слишком много для этого): var s = A+SUM(A)+B-C; var replaceBeginningA = s.Replace(A+, 0+); var replaceSumA = s.Replace(SUM(A), 0); Console.WriteLine(replaceBeginningA);...
Используйте групповую замену: $line =~ s/([^,]),/$1,/g Или взгляд со стороны: $line =~ s/(?<!,),/,/g Сказав, что -это цитата в кавычках CSV, она может появиться внутри строки. Например, это...
Pattern имеет флаг CASE_INSENSITIVE , так что все, что вам нужно, это Pattern pattern = Pattern.compile(^concat\\(,Pattern.MULTILINE+Pattern.CASE_INSENSITIVE);