
在正则表达式中获取非法字符范围:java
我有一个验证名称的简单正则表达式模式。但是当我运行它时,我得到了非法的字符范围错误。我认为通过转义“ \ s”将允许一个空格,但编译器仍在抱怨。public boolean verifyName(String name) { String namePattern = "^[\\p{L}]++(?:[',-\\s][\\p{L}]++)*+\\.?$"; return name.matches(namePattern);}这是我认为不应该发生的错误...
2024-01-10
1/0是合法的Java表达式吗?
以下在我的Eclipse中可以正常编译:final int j = 1/0;// compiles fine!!!// throws ArithmeticException: / by zero at run-timeJava甚至一开始就阻止了许多“愚蠢的代码”的编译(例如"Five" instanceofNumber,没有编译!),所以它甚至没有产生像警告一样多的事实,这令我感到非常惊讶。当您考虑允许在编译时优化常量表达...
2024-01-10
Lambda表达式和通用方法
假设我有一个通用接口:interface MyComparable<T extends Comparable<T>> { public int compare(T obj1, T obj2);}和方法sort:public static <T extends Comparable<T>> void sort(List<T> list, MyComparable<T> comp) { // sort the list}我可以调用此方法并将lambda表达式作为参数传递:List<S...
2024-01-10
将JSP表达式语言变量的值捕获到一个java变量
是否有可能将JSP表达式语言变量的值捕获到jsp页面中的一个java变量中?例如:我有一个变量$ {error.type},我想将$ {error.type}的值捕获到一个java变量中,比如说这样的:String errortype = ${error.type}(我知道这是不可能的)无论如何这样做? 其实我想检查是否${error.type}是否为空,如果有任何值可用,我会显...
2024-01-10
Java中的表达式和语句之间有什么区别?
我是Java的初学者,我想知道Java表达式和语句之间的区别吗?回答:这是一个例子:b + 1是一个表达a = b + 1;而是一个陈述。语句由表达式组成。这不是特定于Java语言的。许多语言都使用这种语法,例如C, C++, Basicetc(not SQL)。...
2024-01-10
从Lambda表达式中的方法返回值
我试图弄清楚如何从lambda表达式返回方法值:public int findMissingNumber(Collection<Integer> ints) { Single<Integer> start = new Single<>(1); ints.stream().mapToInt(Integer::valueOf).parallel().forEach(i -> { if (i != start.setValue(start.getValue() + 1)) { ...
2024-01-10
关于java语言表达力不足的几个例子及可有好的封装方法
开发业务过程中 明显感觉到java语言表达力的不足 就好像没有桌子的概念 所以每次提到桌子都得通过这么一长串的文字--有光滑平板、由腿或其它支撑物固定起来的家具,用以吃饭、写字、工作或玩牌 --来表达桌子的概念 反正开发过程中我是有点晕下面是几个比较典型的例子业务背景购买某些商品 ...
2024-01-10
Lambda表达式用于多种方法的接口
随处可见Java 8 lambda。当我向接口添加其他方法时,为什么这会给我一个错误: interface Something { public String doit(Integer i); public int getID(String name);..... Something s = (Integer i) -> { return i.toString(); }; System.out.println(s.doit(4)); Somethi...
2024-01-10
Java表达式语言如何解析布尔属性?(在JSF 1.2中)
因此,我们都知道,这#{someBean.value}将尝试获取someBean被称为的某些属性的内容value。它将寻找getValue()。但是,如果此属性是boolean?它将寻找isValue()。它不会寻找的是hasValue()。这让我开始思考,它到底在做什么?Java EE5教程章节-引用统一表达语言PageContext.FindAttribute()。PageContext将您送至JSPContext。他们...
2024-01-10
在if语句中格式化多个“或”条件的最佳方法(Java)
一个简单的问题,但是Google并没有提供太多帮助。我有一个带很多条件的if语句(必须检查10或15个常量以查看是否存在任何常量。)而不是这样写:if (x == 12 || x == 16 || x == 19 || ...)有没有办法格式化它if x is [12, 16, 19]?只是想知道是否有更简单的方法来编写此代码,对您的帮助表示赞赏。:答案非...
2024-01-10
Java如何使用正则表达式提取子字符串
我有一个字符串,其中有两个单引号,即’字符。在单引号之间是我想要的数据。如何编写正则表达式从以下文本中提取“我想要的数据”?mydata = "some string with 'the data i want' inside";回答:假设你想要单引号之间的部分,请将此正则表达式与一起使用Matcher:"'(.*?)'"例:String mydata = "some string with 'th...
2024-01-10
使用正则表达式提取Java中的值
我有一些粗略的字符串:[some text] [some number] [some more text]我想使用Java Regex类提取[some number]中的文本。我大致知道我想使用什么正则表达式(尽管欢迎所有建议)。我真正感兴趣的是Java调用以获取正则表达式字符串并将其用于源数据以产生[some number]的值。编辑:我应该补充一点,我只对单个[一些数...
2024-01-10
在Java中使用正则表达式拆分字符串
我是regex的新手,我想做的是在特定条件下拆分String,但我不知道该怎么做。 这是样品/条件String str = sum1=x+(5+a)Array[0] = sum1Array[1] = =Array[2] = xArray[3] = +Array[4] = (Array[5] = 5Array[6] = +Array[7] = aArray[8] = )我希望字符串被拆分+,-,*,\,(,),=这可能吗?回答:如果 需要使用正则表达式,则可能...
2024-01-10
使用正则表达式从Java中的圆括号内提取字符串
我试图从圆括号中提取一个字符串。比方说,我有John Doe (123456789),我只想输出字符串123456789。我找到了此链接和此正则表达式:/\(([^)]+)\)/g但是,我无法弄清楚如何获得想要的结果。任何帮助,将不胜感激。谢谢!回答:String str=”John Doe (123456789)”; System.out.println(str.substring(str.indexOf(“(“)+1,s...
2024-01-10
Java,在正则表达式中转义(使用)引号
我试图在Java中使用以下正则表达式,应该匹配任何正则表达式lang="2-char-lang-name":String lang = "lang=\"" + L.detectLang(inputText) +"\"";shovel.replaceFirst("lang=\"[..]\"", lang);我知道正则表达式会将单个斜杠解释为斜杠,而不是转义字符(因此我的代码不起作用),但是如果我转义了斜杠,"将不会再转义并且我会得...
2024-01-10
在Java中使用正则表达式格式化字符串
有什么方法可以使用正则表达式将字符串格式化为特定模式,还是stringbuilder +子字符串是一种更快的方法?例如,说出电话号码-> 1234567890作为输入并输出为->(123)456-7890我看到有可能在这篇文章上:http ://www.4guysfromrolla.com/webtech/031302-1.shtml,但给出的解释在ASP中。我如何用Java做到这一点?回答:RE...
2024-01-10
使用Java正则表达式删除字符串中的所有其他字符
我有这个作业问题,需要使用正则表达式删除字符串中的所有其他字符。在一部分中,我必须删除索引1,3,5,…处的字符,具体操作如下:String s = "1a2b3c4d5";System.out.println(s.replaceAll("(.).", "$1"));这12345是我想要的打印。本质上,我一次匹配两个字符,然后替换为第一个字符。我使用组捕获来做到这一点...
2024-01-10
如何解释EL表达式中方括号([])运算符的用法
当我阅读 示例应用程序时,我发现他们总是将 添加 和 修改功能放在单个JSP文件中,并且他们使用${owner['new']}表达式自定义当前页面上的元素,例如标签的 “ 所有者”_或“所有者”_ 。Controller文件具有以下片段:@RequestMapping(value = "/owners/new", method = RequestMethod.GET)public String initCreationForm(Map<String, ...
2024-01-10
Java中的原始字符串-特别是用于正则表达式
有没有办法在Java中使用原始字符串(没有转义序列)?(我正在编写大量的正则表达式代码,而原始字符串会使我的代码更具可读性)我了解该语言不会直接提供此功能,但是有什么方法可以以任何方式“模拟”它们吗?回答:不,没有。通常,您会将原始字符串和正则表达式放在属性文件中,但...
2024-01-10
Java正则表达式捕获不起作用
我有一个正则表达式:l:([0-9]+)这应该与该字符串匹配并返回三个捕获(根据Rubular)"l:32, l:98, l:234"这是我的代码:Pattern p ...Matcher m = p.matcher(...);m.find();System.out.println(m.groupCount());当有三个时,此打印输出1(组),所以我只能这样做m.group(1),只会返回32。回答:调用Matcher.find查找匹配的 下一个...
2024-01-10
在Java正则表达式中获取组名
我正在尝试同时接收模式和字符串,并返回组名的映射->匹配结果。例:(?<user>.*)我想返回一个包含“ user”作为键及其匹配值的映射。问题是我似乎无法从Java regexapi获取组名。我只能按名称或按索引获取匹配的值。我没有组名列表,Pattern和Matcher似乎都没有公开此信息。我检查了它的来源,似乎信...
2024-01-10
Java:如何从正则表达式解析双精度
我有一个看起来像“ A = 1.23; B = 2.345; C = 3.567”的字符串我只对“ C = 3.567”感兴趣到目前为止,我有: Matcher m = Pattern.compile("C=\\d+.\\d+").matcher("A=1.23;B=2.345;C=3.567"); while(m.find()){ double d = Double.parseDouble(m.group()); System.out.println(d); ...
2024-01-10
在java中使用正则表达式在html中查找每个表格元素
我有一个html作为字符串。我想用正则表达式找到每个表格元素(开关标签)。我尝试了<table(.*?)>.*</table>模式。但它不起作用,因为它匹配第一个表格打开标签和最后一个表格关闭标签之间的东西。在java中使用正则表达式在html中查找每个表格元素这里是我的代码:Pattern pattern = Pattern.compile("<table(.*?)>....
2024-01-10
Java正则表达式在大括号之间获取数据
我正在寻找一个正则表达式来匹配大括号之间的文本。{one}{two}{three}我希望将它们分别作为单独的组one two three。我试过Pattern.compile("\\{.*?\\}");只删除第一个和最后一个大括号。回答:您需要( )围绕要捕获的内容使用捕获组。只是为了匹配并捕获大括号之间的内容。String s = "{one}{two}{three}";Pattern p = ...
2024-01-10
Java正则表达式从字符串中删除除数字以外的所有内容
我有两个弦 string1 = 44.365 Online order 和string2 = 0 RequestDelivery。现在,我想对这些字符串应用一个正则表达式,以过滤掉除数字以外的所有内容,以便获得像string1 =44365和这样的整数string2 = 0。我该怎么做?回答:您可以使用^。它会考虑您所拥有的一切之外的一切。因此,如果[^y]要过滤除y以外的所有...
2024-01-10
Java组数可变的正则表达式?
是否可以创建具有可变数量的组的正则表达式?例如运行此之后…Pattern p = Pattern.compile("ab([cd])*ef");Matcher m = p.matcher("abcddcef");m.matches();…我想要一些类似的东西m.group(1) = “c”m.group(2) = “d”m.group(3) = “d”m.group(4)= “c”。(背景:我正在解析一些数据行,“字段”之一正在重复。我想避免matche...
2024-01-10
正则表达式在Java中的命名组
据我了解,该java.regex软件包不支持命名组(http://www.regular-expressions.info/named.html),所以有人可以将我指向具有此名称的第三方库吗?我看过jregex,但是它的最新版本是2002年,它在java5下对我不起作用(承认我只是短暂地尝试过)。回答:每个名称只能具有一个命名组(你并不总是可以控制!),并...
2024-01-10
Java正则表达式捕获组
我试图理解此代码块。在第一个中,我们在表达式中寻找什么?我的理解是,它是任意字符(0或多次),后跟0到9之间的任意数字(1或多次+),后跟任意字符(0或多次)。执行此操作时,结果为:Found value: This order was placed for QT3000! OK?Found value: This order was placed for QT300Found value: 0有人可以和我一起...
2024-01-10
Java-匹配反斜杠和引号的正则表达式
如何编写一个正则表达式来匹配它\"(反斜杠然后是引号)?假设我有一个像这样的字符串:<a href=\"google.com\"> click to search </a>我需要将所有替换\"为",因此结果如下所示:<a href="google.com"> click to search </a>这是行不通的:str.replaceAll("\\\"","\"")因为它只匹配引号。不确定如何使用反斜杠。我本可以先...
2024-01-10
Java正则表达式中的零长度匹配
我的代码:Pattern pattern = Pattern.compile("a?");Matcher matcher = pattern.matcher("ababa");while(matcher.find()){ System.out.println(matcher.start()+"["+matcher.group()+"]"+matcher.end());}输出:0[a]11[]12[a]33[]34[a]55[]5我知道的 :“一个?” 代表零个或一次出现的字符“ a”。Java API说...
2024-01-10
