如何使用正则表达式将字符串提取到行尾

时间:2017-02-01 11:58:23

标签: java regex

我在以下结构中包含以下字符串(包含葡萄牙语字符):包含biertjes = data ,然后包含一些单词。

示例:

Name:

我需要从String myStr1 = "aaad Name: bla and more blá\n gdgdf ppp"; String myStr2 = "bbbb Name: Á different blÁblÁ\n hhhh fjjj"; 中提取字符串直到行尾。 例如:

'Name:'

@blue_note回答后编辑:

这是我试过的:

extract(myStr1) = "Name: bla and more blá"
extract(myStr2) = "Name: Á different blÁblÁ"

没用。

2 个答案:

答案 0 :(得分:4)

正则表达式为"^\\w*\\s*((?m)Name.*$)")

  • ?m启用多线模式
  • ^, $分别表示行的开头和行尾
  • .*表示任何字符,任意次数

获取匹配表达式的group(1),而不是group(0)

答案 1 :(得分:1)

在这种情况下你也可以使用子串:

String name = myStr1.substring(myStr1.indexOf("Name:"), myStr1.indexOf("\n"));