Поиск

Вопросы и ответы

Почему с помощью шаблона /\W(\w)+\W/ можно найти не все слова в строке, а только те, которые находятся в середине строки?

Вы ищете слово, окруженное символами-разделителями. Первое слово строки, если оно расположено в ее начале, не имеет перед собой никакого символа-разделителя.

Какая разница между m// и //? Я не нахожу никакой.

Действительно, между ними нет почти никакой разницы. Буква m нужна лишь при использовании символов-разделителей шаблона, отличных от /, как, например, в m!шаблон!.

Я проверяю, правильно ли пользователь вводит число, а шаблон /\d*/ не работает. У него всегда истинное значение!

Поиск по данному шаблону с квантификатором * всегда успешен, неважно, найдены 2 цифры, 100, 1000 или вообще ни одной. Чтобы гарантировать наличие хотя бы одной цифры, нужно использовать шаблон /\d+/.