В зависимости от языка, это должно делать то, что вы нужно это делать. Это будет только соответствовать тому, что вы сказали выше;
это регулярное выражение:
[dog]+(?![\w,])
в строке ..
dog god ogd, dogs o
будет соответствовать только ..
dog, god, and o
Example in javascript
Example in php
Что-нибудь между двумя []
(скобки) - это класс символов .. он будет соответствовать любому символу между скобками. Вы также можете использовать диапазоны. [0-9]
, [a-z]
и т. Д., Но он будет соответствовать только 1 символу. +
и *
являются квантификаторами. +
выполняет поиск 1 или более символов, в то время как *
выполняет поиск нулевого или более символов. Вы можете явно указать диапазон символов в фигурные скобки ({}
), поставив цифру или несколько цифр в промежутке между: {2}
будет соответствовать только 2 символов, в то время как {1,3}
будет соответствовать 1 или 3.
Все между ()
скобку можно использовать для обратных вызовов, скажем, вы хотите вернуть или использовать значения, возвращаемые в качестве замены в строке. ?? является отрицательным взглядом, он не будет соответствовать классу символов после него, чтобы гарантировать, что строки с символами равны , а не, если они присутствуют.
'[\ w \ b,]' неверно. Внутри класса символов '\ b' соответствует обратному пространству, а не границе слова. Почему кто-то хочет совпадение с backspace, которого я не знаю, но класс символов должен потреблять ровно один символ за раз, а слово-граница '\ b' ничего не потребляет. –
Я не знал об этом. Закрепление. – Daedalus