加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

单引号之间的Java正则表达式内容

发布时间:2020-12-14 06:00:11 所属栏目:Java 来源:网络整理
导读:我试图在 Java中编写一个正则表达式来查找单引号之间的内容.有人可以帮我吗我试过以下,但在某些情况下不起作用: Pattern p = Pattern.compile("'([^']*)'"); 测试案例:’Tumblr’是一个惊人的应用程序预期输出:Tumblr 测试案例:Tumblr是一个惊人的“应用
我试图在 Java中编写一个正则表达式来查找单引号之间的内容.有人可以帮我吗我试过以下,但在某些情况下不起作用:
Pattern p = Pattern.compile("'([^']*)'");

>测试案例:’Tumblr’是一个惊人的应用程序预期输出:Tumblr
>测试案例:Tumblr是一个惊人的“应用程序”预期的输出:应用程序
>测试案例:Tumblr是一个“惊人的”应用程序预期输出:惊人
>测试案例:Tumblr是“真棒”和“惊人”预期的输出:真棒,惊人
>测试用例:Tumblr的用户感到失望预期输出:NONE
>测试案例:Tumblr的“收购”完成,但用户的忠诚度怀疑预期产出:收购

我很感谢任何帮助.

谢谢.

解决方法

这应该是诀窍:
(?:^|s)'([^']*?)'(?:$|s)

示例:http://www.regex101.com/r/hG5eE1

Java (ideone)年:

import java.util.*;
import java.lang.*;
import java.util.regex.*;

class Main {

        static final String[] testcases = new String[] {
            "'Tumblr' is an amazing app","Tumblr is an amazing 'app'","Tumblr is an 'amazing' app","Tumblr is 'awesome' and 'amazing' ","Tumblr's users' are disappointed ","Tumblr's 'acquisition' complete but users' loyalty doubtful"
        };

    public static void main (String[] args) throws java.lang.Exception {
        Pattern p = Pattern.compile("(?:^|s)'([^']*?)'(?:$|s)",Pattern.MULTILINE);
        for (String arg : testcases) {
            System.out.print("Input: "+arg+" -> Matches: ");
            Matcher m = p.matcher(arg);
            if (m.find()) {
                System.out.print(m.group());
                while (m.find()) System.out.print(","+m.group());
                System.out.println();
            } else {
                System.out.println("NONE");
            }
        } 
    }
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读