【javascript基础---正则表达式和字符串,数组】教程文章相关的互联网学习教程文章

java – 仅在外部括号中捕获正则表达式中的组【代码】

我想使用正则表达式从java中的字符串中捕获日期和其他一些信息. 我将我的模式分组如下,"( ( date_variation_1 | date_variation_2) (some_other_info) ) "而现在,我想像这样提取匹配的字符串,group0 – 整场比赛group1 – 日期group2 – 其他一些信息 我的问题是我需要在date_variation_1,date_variation_2和some_other_info内部使用括号,这些括号也将被视为组分隔符. 有没有任何简单的解决方法,即将一些其他特殊章程定义为外部...

Java – 正则表达式匹配任何整数【代码】

我有一个问题,正则表达式匹配任何int的字符串. 这就是我所拥有的:if(quantityDesired.matches("\b\d+\b")){.......}但Eclipse给了我:Invalid escape sequence (valid ones are \b \t \n \f \r \" \' \\ )我已经查看了其他类似的问题,我尝试使用双反斜杠,但这不起作用.建议?解决方法:您需要转义Java字符串文字中的反斜杠:"\\b\\d+\\b"这当然只匹配正整数,而不是你在问题中所说的任何整数.那是你的意图吗?I’ve looked ...

Android Java正则表达式匹配【代码】

我正试图拔出字符串:[{"name":"John Doe Jr."},{"name2":"John Doe"}] & {"name":"John Doe"} 从下面的JSON字符串中的有效负载:{"to":"broadcast", "type":"50", "payload":[{"name":"John Doe Jr."},{"name2":"John Doe"}]}{"to":"broadcast", "type":"50", "payload":{"name":"John Doe"}}使用这个正则表达式代码:Pattern pattern = Pattern.compile("\\{(.*?)\"payload\":\"(.*?)\"\\}\\}");Matcher matcher = pattern.match...

java – 正则表达式匹配对ebay网站的否定【代码】

我有一个正则表达式匹配任何易趣网站:(?i)^((http|https)://)?(\w+\.)*ebay.(\w+.)+我想否定它,以匹配所有,除了这个网站 我试过了:(?! pattern ) (?!pattern) [^pattern]但没有任何效果.也许我的第一个正则表达式太不合理了? java中的测试用例:Pattern queryPattern = Pattern.compile("(?i)^((http|https)://)?(\\w+\\.)*ebay.(\\w+.)+"); List<String> queries = new LinkedList(); queries.add("http://www.ebay.com/blabla...

java – 正则表达式很慢,如何检查一个字符串是否只有单词字符快?【代码】

我有一个函数检查一个字符串(大多数字符串只有一个CJK字符)只有单词字符,它将被调用很多次,所以成本是不可接受的,但我不知道如何优化它,任何建议?/*\w is equivalent to the character class [\p{Ll}\p{Lu}\p{Lt}\p{Lo}\p{Nd}].For more details see Unicode TR-18, and bear in mind that the set of charactersin each class can vary between Unicode releases.*/ private static final Pattern sOnlyWordChars = Pattern.comp...

Java正则表达式:如果结束括号是字符串中的最后一个字符,则匹配圆括号中的任意位数【代码】

我需要一些帮助来保存我的一天(或我的夜晚).我想匹配: >任意数量的数字>用圆括号括起来“()”[括号中除了数字之外别无其他]>如果结束括号“)”是字符串中的最后一个字符. 这是我提出的代码:// this how the text looks, the part I want to match are the digits in the brackets at the end of itString text = "Some text 45 Some text, text and text (1234)"; String regex = "[no idea how to express this.....]"; // thi...

Java正则表达式不会删除点【代码】

我正试图删除“……”在文本中,并将其替换为“.”. 我的代码:System.out.println(TextHandler.class.toString() + " removeExcessiveSpaces E2 " + text); while (text.contains("\\. \\.")) {text = text.replaceAll("\\. \\.", "."); } System.out.println(TextHandler.class.toString() + " removeExcessiveSpaces E3 " + text);文字输入:"from the streets' fit but you know it. . this is just another case of female sto...

如何在java中使用正则表达式提取最后一个最短的字符串【代码】

我怎样才能在下面提取粗体字符串string : hello world blah -d blah vlaah -n blah vlahh hello world blah -n blah vlahh -d blah vlaah hello world blah -d blaaah我试过了. – [dn].* $但它找到了如下所示的最长匹配字符串hello world blah -d blah vlaah -n blah vlahh我想提取最短的匹配字符串.提前致谢解决方法:您可以使用negative lookahead来避免匹配匹配中的另一个-d / -n:-[dn] (?!.*?-[dn]).*$RegEx Demo

学习笔记 2019-07-25 【Java】利用正则表达式判断字符串是否是数字(包括正负整数和浮点数)

import java.util.regex.Pattern;/*** 【Java】利用正则表达式判断字符串是否是数字(包括正负整数和浮点数)*/ public class NumberUtils {private static Pattern IS_INT = Pattern.compile("^-?[1-9]\\d*$");private static Pattern IS_DOUBLE = Pattern.compile("^-?([1-9]\\d*\\.\\d*|0\\.\\d*[1-9]\\d*|0?\\.0+|0)$");/*** 是否为正负整数* @param str 字符串* @return boolean*/public static boolean isInteger(String str...

java – 如何在正则表达式中获得匹配的.*?【代码】

我有成千上万种不同的正则表达式,它们看起来像这样:^Mozilla.*Android.*AppleWebKit.*Chrome.*OPR\/([0-9\.]+)如何在正则表达式中获得与.*匹配的子字符串?例如,对于上面的正则表达式,我会得到四个不同的.* s的四个子串.另外,我事先并不知道有多少.* s,即使我可以通过对给定的正则表达式字符串做一些简单的操作,但这会给程序带来更多的复杂性.我处理了相当多的数据,所以真正关注这里的效率.解决方法:将.* s替换为(.*)s并使用match...

Java – 带有冲突正则表达式的string.split【代码】

我最近遇到了这个问题,不知道如何解决它.我知道在String类中,我们有split方法接受正则表达式,并且基于正则表达式,给定的字符串被拆分成不同的字符串并以字符串数组返回. 例如,如果我有,String s = "A,B,C";我做到了,System.out.println(Arrays.toString(s.split(",")));它会将[A,B,C]打印到输出控制台. 现在让我们说我的字符串是String s = "A,\"\"B\"\",\"\"C\"\",D"; //easier to read version: A,""B"",""C"",D我使用以下正则...

java – 使用正则表达式检测以重音大写字母开头的单词【代码】

我想用Java中的正则表达式提取以大写字母开头的单词 – 包括重音大写字母. 这是以大写字母A到Z开头的单词的条件:if (link.text().matches("^[A-Z].+") == true) 但我也想要以重音大写字母开头的单词. 你有什么想法?解决方法:从http://download.oracle.com/javase/6/docs/api/java/util/regex/Pattern.html开始\p{javaUpperCase} Equivalent to java.lang.Character.isUpperCase()

Java高级-正则表达式

概念 正则表达式是一组特定的字符,用来描述一组字符串的格式。作用 校验一组字符串是否满足定义的格式。正则表达式运算符 如下所示: [abc] a、b、c中任意一个字符 [^abc]除了a、b、c之外的任意一个字符[a-z] a到z中的任意一个字符 [a-zA-Z] a到z和A-Z中任意一个字符 [a-z&&[^bc]] = [ad-z] a到z中除了b、c之外的任意一个字符 [0-9] 0-9中任意一个数字 a|b 匹配a或者b 如下所示: .表示匹配任意一个字符 ...

JAVA正则表达式:Pattern类与Matcher类详解【代码】

java.util.regex是一个用正则表达式所订制的模式来对字符串进行匹配工作的类库包。它包括两个类:Pattern和Matcher Pattern 一个Pattern是一个正则表达式经编译后的表现模式。 Matcher 一个Matcher对象是一个状态机器,它依据Pattern对象做为匹配模式对字符串展开匹配检查。 首先一个Pattern实例订制了一个所用语法与PERL的类似的正则表达式经编译后的模式,然后一个Matcher实例在这个给定的Pattern实例的模式控制下进行字符串的匹...

java – 指数函数的正则表达式(e ^ x)【代码】

我试图检查字符串是否包含e ^ x或e ^(任何#,包括负数)x的内容,但我无法弄明白.这是我尝试过的:if(str.matches("^(e^x)$") || str.matches("^(e^[-?0-9]x)$")){System.out.println("match"); }一些匹配的例子是:-3e^x 100e^-x e^-2x我引用了this,但我仍然无法弄明白.解决方法:未转义^匹配字符串的开头.如果在正则表达式模式中使用它并且未指定多行标志,则模式将始终失败,因为字符串的开头不能出现在其中间. 你需要逃避^和匹配()你...