Получение строки перед числами с регулярным выражением в Java - PullRequest
1 голос
/ 15 сентября 2010

Есть ли способ получить первую часть строки до 4 чисел в ().

Input String: "Some Title (2000) some text."
Output String: "Some Title "

Я не хочу перебирать совпадения и получать сначала.Я хочу, чтобы регулярное выражение получало символы перед 4 числами в (), и я хочу, чтобы оно отбрасывало остальную часть текста.

Ответы [ 2 ]

2 голосов
/ 15 сентября 2010

Regexp будет выглядеть примерно так:

(.*)\(\d{4}\).*

Для использования в Java вам нужно экранировать обратную косую черту, а выходная строка находится в группе 1.

1 голос
/ 15 сентября 2010

Для этого типа текста:

String result = input.split("\\(")[0];

или, если ( может встречаться в первой части:

String result = input.split("\\(\\d{4}\\)")[0];

Это работает даже для входных данных, которые вообще не содержат чисел и пустых строк.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...