【Java – split(regex,limit)方法实际上如何工作?】教程文章相关的互联网学习教程文章

java.util.regex.Matcher中的groupCount()始终返回0【代码】

我试图计算字符串中有多少匹配模式.我是新手使用java.util.regex,我打算使用matcher.groupCount()来获取匹配组的数量.因为根据文档,它返回捕获组的数量.Returns the number of capturing groups in this matcher’s pattern. Group zero denotes the entire pattern by convention. It is notincluded in this count. Any non-negative integer smaller than or equal to the value returnedby this method is guaranteed to be a ...

创建java regex以获取href链接【代码】

很抱歉,如果之前已经询问过,但我在网上找不到任何答案.我很难搞清楚这个正则表达式的反转:“\”[^>]*\”>”我想使用replaceAll来替换除链接之外的所有内容.所以如果我有一个类似这样的标签:<p><a href="http://www.google.com">Google</a></p>我需要一个满足这个要求的正则表达式:s.replaceAll(regex, “”);给我这个输出:http://www.google.com我知道有更好的方法可以做到这一点,但我必须使用正则表达式.非常感谢任何帮助,谢谢...

java – 用逗号忽略逗号并用空格分割字符串的RegEx【代码】

我需要编写一个正则表达式来用逗号分隔一个字符串,而不是用空格逗号.我写了一个,但它没有用. 例如:String testString = "CONGO, THE DEMOCRATIC REPUBLIC OF THE,IRAN, ISLAMIC REPUBLIC OF,KOREA, DEMOCRATIC PEOPLE S REPUBLIC OF,NEPAL,NEW ZEALAND,SRI LANKA";预期结果: >刚果民主共和国,刚果民主共和国>伊朗伊斯兰共和国>朝鲜民主主义人民共和国>尼泊尔>新西兰>斯里兰卡 我的代码:public class TestRegEx {/*** @param arg...

Java Regex用于匹配带引号的字符串和转义引号【代码】

我知道已经有很多像我这样的问题,但是我找不到适用于Java的答案.所以我写了一个新问题. 我有包含这样内容的文本文件:key1 = "This is a \"test\" text with escapes using \\ characters"; key2 = It must work with \single\ quotes and "double" quotes;我需要一个与双引号(或单引号)中的值匹配的正则表达式.此正则表达式必须支持转义的引号和转义的反斜杠.正则表达式必须与Java标准Pattern / Matcher类一起使用.解决方法:试试这...

java.util.regex.PatternSyntaxException:Illegal repetition【图】

Illegal repetition 解决方法 出现这个问题,可能是你传入的参数未转义,如下修改成这样既可

regex java:如何在泛型的开始标记和结束标记之间替换泛型中的字符串【代码】

在java中,我有一个像这样的字符串:"bla bla bla bla [BACK] bla bla bla [bla bla [GO] bla bla bla bla [bla" 我想找到一个规则用正则表达式替换开始标记“[”和“(开始)”和结束标记“]”用“(结束)”. 应忽略“单独的起始标签或结束标签”. 结果是我得到以下内容:bla bla bla bla (start)BACK(end) bla bla bla [ bla bla (start)GO(end) bla bla bla bla [bla解决方法: String resultString = subjectString.replaceAll("(?x...

试图使用Regex查找短语并显示已找到的短语的Java应用程序【代码】

HY, 我有一个试图找到短语的应用程序.我的假设是,短语以大写字母开头,以点结尾,之间可以包含任何内容. 贝娄是我的代码:for(String s: manyLines){Pattern pa = Pattern.compile("([A-Z]{1})(.*)(\\.)");Matcher ma = pa.matcher(s);if(ma.find()){manyPhrase.add(s);}但正则表达式似乎不起作用,因为许多Phrase(字符串的ArryList)它获取所有行而不仅仅是短语. 例如,我的输入文件有:Fox fox runs to escape dog dog. ak; Rabbit ra...

在Java中,哪个更快 – String.contains(“some text”)或Regex寻找相同的文本?

正如标题所说,只是寻找一个字符串来匹配完成通过套接字发送数据的客户端,所以我可能会在JSON字符串中寻找类似{“Message”:“END”}的内容.最多的字符串将是几百个字符长.解决方法:在你知道它们之前,它们都足够快.最好选择一个你可以更轻松阅读的版本. 但是从论坛来看,博客包含的速度更快,但性能差异仍然可以忽略不计

java – 如何在文件中将:: regex serde用作:: as delimiter【代码】

我有一个数据集,它使用双冒号(::)作为分隔符.如何在Hive中使用正则表达式serde来解析数据,以便将其导入表中? 数据结构如下:userId::movieId::rating::time目前我正在使用此查询,但它为select语句提供了空值:create table rating_regex(userId string,movieId string,rating string,time string) row format serde 'org.apache.hadoop.hive.contrib.serde2.RegexSerDe' with serdeproperties( "input.regex" = "::") stored as ...

java – JAX-RS / Jersey路径参数regex用于简单字符串【代码】

我正在尝试匹配字符串v1和v2.为此,我正在尝试以下正则表达式:^ v(1 | 2)(我也尝试过$,这可能是我需要的).当我在http://www.regextester.com/测试它时,似乎工作正常.但是当我在JAX-RS路径表达式中使用它时,它不起作用.我使用的表达式如下: @Path( “/嗒嗒/ {版本:^ V(1 | 2)} / EP”) JAX-RS是否有任何我特有的缺失?解决方法:由于锚点^,您的尝试无效.引自JAX-RS specification, chapter 3.7.3(强调我的):The function R(A) con...

java – Eclipse使用Regex查找/替换注释行【代码】

我有一些包含如下注释的类:... ... ... /* */ /* */ public void startApplication() /* */ { /* 57 */ initializeFields(); /* 58 */ this.run = true; /* 59 */ new Thread(this).start(); /* */ } /* */ /* */ public void stopApplication() { /* 63 */ this.run = false; /* */ } /* */ /* */ public void run() /* */ { ... ... ...我必须清...

java – 使用Regex和indexOf拆分字符串【代码】

我有一个简单的字符串Ex. 1.0.0.2,我想分割和检索字符串的一部分:输出:1.0.0基本上我想删除第三个之后的所有文本.包括在内.我尝试使用split()函数,计算出的出现次数.并且,如果大于2,则获取indexOf()第三个点和substring().是否有更简单或更快的方法来实现这一目标?也许使用regEx? 编辑:我不知道会有多少个点.解决方法:如果你不确定是否会有正好三个点 – 所以你不能使用lastIndexOf() – 那么这里是一个基于正则表达式的解决方...

Java Regex文件扩展【代码】

我必须检查文件名是否以gzip扩展名结尾.特别是我正在寻找两个扩展名:“.star.gz”和“.gz”.我想使用单个正则表达式将文件名(和路径)捕获为一个组,不包括gzip扩展名(如果有的话).我在此示例路径上测试了以下正则表达式String path = "/path/to/file.txt.tar.gz";>表达式1:String rgx = "(.+)(?=([\\.tar]?\\.gz)$)";>表达式2:String rgx = "^(.+)[\\.tar]?\\.gz$";以这种方式提取组1:Matcher m = Pattern.compile(rgx).matcher...

Java Regex无法正确匹配【代码】

我需要检查一个字符串是否有自己的等号.我现在的正则表达式似乎不适用于Java,即使RegexPal匹配它. 我目前的代码是:String str = "test=tests"; System.out.println(str + " - " + str.matches("[^=]=[^=]"));在以下测试用例中,第一个应匹配,第二个不应:test=tests // matches t=t test==tests // doesn't matchRegex Pal做得对,但是,由于某些原因,Java在两个测试用例中都返回false.我在某个地方出错了吗? 谢谢!解决方法:Java的...

Matcher.find()之前的Java Regex Pattern Matcher.matches()奇怪的行为【代码】

我试过这个例子只是交换两行它给出了不同的输出原因String inputString = "username@gmail.com"; String pattern="([a-z]+@)([a-z]+)(\\.[a-z]+)"; Pattern p = Pattern.compile(pattern); Matcher m = p.matcher(inputString); ///这里发生了变化if(m.find()) {String resultString = m.replaceAll("$1xxxx$3"); System.out.println(resultString); }System.out.println(m.matches());//line to be changed输出: username@xx...