Запитання з тегом «regex»

Регулярні вирази забезпечують декларативну мову, щоб відповідати шаблонам у рядках. Вони зазвичай використовуються для перевірки рядків, розбору та перетворення. Оскільки регулярні вирази не повністю стандартизовані, усі питання з цим тегом повинні також містити тег із зазначенням застосованої мови програмування чи інструменту. ПРИМІТКА: Прохання про HTML, JSON тощо, регулярні вирази, як правило, зустрічаються з негативними реакціями. Якщо для цього є аналізатор, використовуйте його замість цього.

30
Додайте пробіли перед великими літерами
З огляду на рядок "ThisStringHasNoSpacesButItDoesHaveCapitals", який найкращий спосіб додати пробіли перед великими літерами. Таким чином, кінцевим рядком буде "Ця струна не має пробілів, але вона має великі літери" Ось моя спроба з RegEx System.Text.RegularExpressions.Regex.Replace(value, "[A-Z]", " $0")
194 c#  regex  string 

7
Переключити оператор для відповідності рядків у JavaScript
Як мені написати swtich для наступного умовного? Якщо URL містить "foo", то settings.base_url є "bar". Наступним є досягнення необхідного ефекту, але я відчуваю, що це було б більш керованим в комутаторі: var doc_location = document.location.href; var url_strip = new RegExp("http:\/\/.*\/"); var base_url = url_strip.exec(doc_location) var base_url_string = base_url[0]; //BASE URL …

7
Замініть лише деякі групи на Regex
Припустимо, у мене є такий регекс: -(\d+)- і я хочу замінити, використовуючи C #, в групі 1 (\d+)з AA, щоб отримати: -AA- Тепер я замінюю його за допомогою: var text = "example-123-example"; var pattern = @"-(\d+)-"; var replaced = Regex.Replace(text, pattern, "-AA-"); Але мені це не дуже подобається, тому що …
191 c#  regex  replace 

13
Регулярний вираз, щоб дозволити пробіли між словами
Я хочу регулярний вираз, який забороняє символи та дозволяє лише літери та цифри. Регекс нижче працює чудово, але він не допускає пробілів між словами. ^[a-zA-Z0-9_]*$ Наприклад, при використанні цього регулярного виразу "HelloWorld" це добре, але "Hello World" не відповідає. Як я можу налаштувати його, щоб дозволити пробіли?

9
Regex для рядка, що не закінчується заданим суфіксом
Я не зміг знайти правильний регулярний вираз, щоб відповідати жодному рядку, який не закінчується якоюсь умовою. Наприклад, я не хочу відповідати нічого, що закінчується на a. Це відповідає b ab 1 Це не відповідає a ba Я знаю, що регулярний вираз повинен закінчуватися, $щоб позначити кінець, хоча я не знаю, …
190 regex 

5
Регулярне вираження для обмеження кількості символів до 10
Я намагаюся написати регулярний вираз, який дозволить використовувати лише малі літери та до 10 символів. Що у мене поки що виглядає так: pattern: /^[a-z]{0,10}+$/ Це не працює і не компілюється. У мене був робочий, який би дозволяв лише малі літери: pattern: /^[a-z]+$/ Але мені потрібно обмежити кількість символів до 10.
189 regex 

30
RegEx для відповідності поштових індексів Великобританії
Я після регексу, який підтверджує повний комплексний поштовий індекс у Великобританії лише у рядку введення. Усі незвичайні форми поштових індексів повинні бути охоплені так само, як і звичайні. Наприклад: Сірники CW3 9SS SE5 0EG SE50EG se5 0ег WC2H 7LT Немає відповідності aWC2H 7LT WC2H 7LTa WC2H Як вирішити цю проблему?

7
Помилка RE: незаконна послідовність байтів у Mac OS X
Я намагаюся замінити рядок у Makefile на Mac OS X для перехресного компіляції в iOS. Рядок має вбудовані подвійні лапки. Команда така: sed -i "" 's|"iphoneos-cross","llvm-gcc:-O3|"iphoneos-cross","clang:-Os|g' Configure І помилка: sed: RE error: illegal byte sequence Я намагався не радіти уникати подвійних лапок, коми, тире та колонок. Наприклад: sed -i "" …
184 regex  macos  bash  sed 

1
група python re.sub: число після \ число
Як я можу замінити foobarз foo123bar? Це не працює: >>> re.sub(r'(foo)', r'\1123', 'foobar') 'J3bar' Це працює: >>> re.sub(r'(foo)', r'\1hi', 'foobar') 'foohibar' Я думаю, що це поширене питання, коли мати щось подібне \number. Хтось може дати мені підказку, як з цим впоратися?

8
Що робити Шаблон регулярного вираження не відповідає ніде в рядку?
Я намагаюся відповідати <input>полям «приховані» поля за допомогою цього шаблону: /<input type="hidden" name="([^"]*?)" value="([^"]*?)" />/ Це зразкові дані форми: <input type="hidden" name="SaveRequired" value="False" /><input type="hidden" name="__VIEWSTATE1" value="1H4sIAAtzrkX7QfL5VEGj6nGi+nP" /><input type="hidden" name="__VIEWSTATE2" value="0351118MK" /><input type="hidden" name="__VIEWSTATE3" value="ZVVV91yjY" /><input type="hidden" name="__VIEWSTATE0" value="3" /><input type="hidden" name="__VIEWSTATE" value="" /><input type="hidden" name="__VIEWSTATE" value="" /> Але я …
181 html  regex  parsing 

3
Греп-регекс НЕ містить рядок
Я передаю список зразків регулярних виразів, grepщоб перевірити наявність файлу syslog. Зазвичай вони відповідають IP-адресі та запису журналу; grep "1\.2\.3\.4.*Has exploded" syslog.log Це просто список шаблонів, як "1\.2\.3\.4.*Has exploded"частина, яку я проходжу, в циклі, тому я не можу, наприклад, пропустити "-v". Я розгублений, намагаючись зробити зворотне вищезазначене, НЕ збігаються рядки …
181 regex  grep 

7
Як виконати заміну Perl на рядку, зберігаючи оригінал?
У Perl, що є хорошим способом виконати заміну на рядку, використовуючи регулярний вираз і зберегти значення в іншій змінній, не змінюючи оригінал? Зазвичай я просто копіюю рядок до нової змінної, а потім прив'язую її до s///регулярного виразу, який робить заміну на нову рядок, але мені було цікаво, чи є кращий …
180 regex  perl  replace 


3
Названа група регулярних виразів ((? P <назва_групи> regexp) »: що означає« P »?
У Python (?P&lt;group_name&gt;…) синтаксис дозволяє посилатися на відповідні рядки через його ім'я: &gt;&gt;&gt; import re &gt;&gt;&gt; match = re.search('(?P&lt;name&gt;.*) (?P&lt;phone&gt;.*)', 'John 123456') &gt;&gt;&gt; match.group('name') 'John' Що означає "P"? Я не зміг знайти жодного натяку в офіційній документації . Я хотів би отримати ідеї про те, як допомогти студентам запам'ятати цей …


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.