Мне сложно понять, почему ((?i)\bb.*?\b)
возвращает b
, а не b-
для строки a b- c
. Я также пробовал ((?i)\bb\w*\b)
, но это не работает лучше.. *? не соответствует символу до границы слова
Некоторые подробнее:
Мне нужно, чтобы соответствовать слова в тексте. Мне нужно получить все слова, начинающиеся с буквы b
. И «слова» означают почти любую строку символов, которая начинается с b
, например b
, b-
, b'
, b"
и т. Д. «Слова», которые мне нужно сопоставить, конечно, не ограничены пространством, например, в этом примере.
Это не значит, потому что у вас есть ленивое регулярное выражение '. *?'. Но чего же вы пытаетесь достичь? – bokibeg
'.' "Соответствует любому символу, кроме \ n". '-' не является персонажем. '\ w' эквивалентен [a-zA-Z_0-9], который не включает' -' – SwDevMan81
@bokibeg Добавлена дополнительная информация ... – user1151923