Я хочу заключить первое слово в скобки и «все, что следует после пробела» тоже в скобки.
К сожалению, команда : (\w) (.*)
не работает.
Например, для предложения «Как сопоставить слово, за которым следует что-либо» будет найдено соответствие «w для сопоставления слова, за которым следует что-либо».
решение1
\w
представляет собой словохарактер, ни слова в том смысле, в котором вы это имеете в виду. То есть, одна буква, из аз и АЗ.
Для соответствия вашим требованиям укажите ^(\w+) (.*)$
.
Это разбивается на:
^
- Начало строки
(
- Начать группу захвата
\w
- Любой символ, соответствующий az или AZ
+
- По крайней мере 1 или более из предыдущего типа
)
- Завершить нашу группу захвата
- Космический персонаж
(
- Начинаем вторую группу захвата.
.
- Любой символ, кроме символа новой строки
*
- 0 или более предыдущего типа
)
- Завершить группу захвата
$
- Конец строки
Это будет соответствовать, используя ваш пример предложения How to match a word followed by anything
, Группа 1 = How
и Группа 2 =to match a word followed by anything
Предположим, вы хотите удалить первое слово, теперь вы можете использовать \2
поле замены, чтобы заменить все совпадения на все, кроме первого слова.
Или, если снова взглянуть на первое предложение и захотеть заключить в скобки первое слово, а затем и всю остальную часть предложения, замените его на : \(\1\) \(\2\)
, literal left parenthesis
, capture group 1
, literal right parenthesis
, space
, literal left parenthesis
, capture group 2
.literal right parenthesis