提取单引号中的字符串数据

时间:2013-07-19 17:12:05

标签: java regex

我使用的是java 7,我的数据流包含以下行:

SENDER='CALTRANS'
SENDER='BIGO'
SENDER='FIO'
..
..

我想只提取单引号中的数据。即

CALTRANS
BIGO
FIO

... ..

有关正则表达式的任何建议吗?

1 个答案:

答案 0 :(得分:5)

您可能会使用正则表达式:

^SENDER='([^']+)'$

使用多行标志。此正则表达式匹配行的开头,后跟文本SENDER=',后跟任何非单引号,后跟单引号,后跟行尾。

String regex = "(?m)^SENDER='([^']+)'$";

因此,您将打印捕获组1的所有匹配项,如下所示:

Pattern p = Pattern.compile( regex);
Matcher m = p.matcher(inputText); // inputText = "SENDER='CALTRANS'... etc"
while(m.find()) {
    System.out.println(m.group(1));
}