黑马程序员技术交流社区

标题: 如何利用正则表达式来提取双引号里面的数据呢? [打印本页]

作者: shls123123    时间: 2017-2-26 20:45
标题: 如何利用正则表达式来提取双引号里面的数据呢?
"DATE       ""YEARS      ""DAY        ""MONTH      ""YEAR       ""FLPR       ""FLPRH      ""FLPT       ""FLPTH      ""FMWIN      "
如何利用正则表达式,把双引号里面的数据提取出来呢???

作者: 香草芭芙    时间: 2017-2-26 21:22
空格也要的话 (?<=")[A-Z ]+(?=")

不要空格就 (?<=")[A-Z]+

[Java] 纯文本查看 复制代码
public static void main(String[] args) {

    /** 无空格 */
    // final String regex = "(?<=\")[A-Z]+";
    /** 有空格 */
    final String regex = "(?<=\")[A-Z ]+(?=\")";
    final String string = "\"DATE       \"\"YEARS      \"\"DAY        \"\"MONTH      \"\"YEAR       \"\"FLPR       \"\"FLPRH      \"\"FLPT       \"\"FLPTH      \"\"FMWIN      \"";
    final Pattern pattern = Pattern.compile(regex);
    final Matcher matcher = pattern.matcher(string);
    while (matcher.find()) {
        System.out.println(matcher.group());
    }
}

作者: 愤怒的大飞机    时间: 2017-2-26 23:06
要是我,我不用正则,我直接把双引号替换成空,String str=str.replaceAll("\\"","");

作者: shls123123    时间: 2017-3-2 21:53
香草芭芙 发表于 2017-2-26 21:22
空格也要的话 (?

谢谢,我没有组合出来,谢谢您的解答

作者: shls123123    时间: 2017-3-2 21:53
香草芭芙 发表于 2017-2-26 21:22
空格也要的话 (?

谢谢,我没有组合出来,谢谢您的解答

作者: shls123123    时间: 2017-3-2 21:54
愤怒的大飞机 发表于 2017-2-26 23:06
要是我,我不用正则,我直接把双引号替换成空,String str=str.replaceAll("\\"","");
...

哈哈,我就是这么解决的




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2