До сих пор у меня есть следующие:Как я могу получить последнее слово после специального символа?
\- (.*)
И из следующего текста:
September 2014 - Media
мне нужно, чтобы получить "Медиа", Тхо я получаю "- СМИ"
До сих пор у меня есть следующие:Как я могу получить последнее слово после специального символа?
\- (.*)
И из следующего текста:
September 2014 - Media
мне нужно, чтобы получить "Медиа", Тхо я получаю "- СМИ"
Ваш regex правильно, просто напечатайте индекс группы 1 вместо группы 0, и вам не нужно выходить из -
.
См захваченное строку Media
на правой стороне в приведенной выше ссылке демо.
ИЛИ
Используйте ниже регулярное выражение, чтобы соответствовать только Media
,
- \K.*
Вы можете использовать 'назад, если ваш язык не поддерживает \K
,
(?<=-).*
> "September 2014 - Media".match(/[^- ]+$/g)
[ 'Media' ]
> var r = "September 2014 - Media";
undefined
> console.log(/- (.*)/.exec(r)[1])
Media
Если ваш язык позволяет назад ', попробуйте:
(?<=-)(.*)
если не просто использовать:
([^-]*)$
Я использую Javascript – Monica
Тогда вы можете использовать альтернативное решение. А также добавьте тег 'javascript' к вопросу. – blackSmith
Лучше также пометить его с "Javascript", если ищете JS regex, поскольку существует большая разница между специфическими ароматизаторами регулярных выражений. –
Правда, я просто новый в этом, и я не знал – Monica