Корпус:регулярное выражение - совпадение слов только один раз в строке
- ehello до свидания hellot привет до свидания
- ehello до свидания привет привет до свидания
Я хочу, чтобы соответствовать линии 1 (имеет только «привет 'один раз!) НЕ хочу соответствовать строке 2 (содержит «привет» более одного раза)
Пробовал использовать негативный взгляд вперед, чтобы посмотреть, а что нет ... без каких-либо реальных succ ESS ..
Почему бы просто не найти его один раз и проверить, что он не существует снова после этого? Кажется, это немного менее повторяется. – Wiseguy
@Wiseguy - паттен, как '^. * Hello (?!. * Hello)' не будет работать, потому что он всегда будет соответствовать последнему «привет» строки. Вам нужно что-то вроде '^ (? :(?! hello).) * Hello (?!. * Hello)', что не намного элегантнее. Возможно, я пропустил что-то простое, хотя ... – Kobi
@Wiseguy - no. Двигатель регулярных выражений пытается совместить, а не с отказом. Он может совпадать, так и будет. – Kobi