Questions tagged «regex»

正则表达式提供了一种声明性语言来匹配字符串中的模式。它们通常用于字符串验证,解析和转换。由于正则表达式尚未完全标准化,因此带有此标签的所有问题还应包括一个标签,用于指定适用的编程语言或工具。注意:询问HTML,JSON等正则表达式往往会产生负面反应。如果有解析器,请改用它。

10
正则表达式匹配文本中带或不带逗号和小数的数字
我正在尝试查找并替换文本正文中的所有数字。我找到了一些正则表达式示例,它们几乎可以解决问题,但是还没有一个完美的例子。我的问题是文本中的数字可能带有小数点和逗号,也可能没有。例如: “ 5000磅重的狐狸跳过了99,999.99998713英尺的围栏。” 正则表达式应返回“ 5000”和“ 99,999.99998713”。示例我发现分解逗号上的数字或限制为两位小数。我已经开始足够了解正则表达式,以了解为什么某些示例限于两位小数,但是我还没有学会如何克服它,还没有包括逗号来获得整个序列。 这是我的最新版本: [0-9]+(\.[0-9][0-9]?)? 返回上面的文本的“ 5000”,“ 99,99”,“ 9.99”和“ 998713”。
96 regex 


7
检查字符串是否与ruby中的正则表达式匹配的最快方法?
检查字符串是否与Ruby中的正则表达式匹配的最快方法是什么? 我的问题是,我必须通过大量的字符串“ egrep”来查找与运行时给出的regexp匹配的字符串。我只在乎字符串是否与正则表达式匹配,不在乎匹配的位置,也不在乎匹配组的内容。我希望这个假设可以减少我的代码用于匹配正则表达式的时间。 我加载正则表达式 pattern = Regexp.new(ptx).freeze 我发现它string =~ pattern的速度比稍快string.match(pattern)。 还有其他技巧或捷径可以使测试更快吗?

7
我可以替换Java正则表达式中的组吗?
我有这段代码,我想知道是否可以替换Java正则表达式中的仅组(不是所有模式)。码: //... Pattern p = Pattern.compile("(\\d).*(\\d)"); String input = "6 example input 4"; Matcher m = p.matcher(input); if (m.find()) { //Now I want replace group one ( (\\d) ) with number //and group two (too (\\d) ) with 1, but I don't know how. }

4
如何否定整个正则表达式?
例如,我有一个正则表达式(ma|(t){1})。它匹配ma和t不匹配bla。 我想否定正则表达式,因此必须匹配bla,而不是ma和t,加入的东西此正则表达式。我知道我会写bla,但是实际的正则表达式却更复杂。

2
PatternSyntaxException:在Java中使用正则表达式时非法重复
我对正则表达式了解不多,但是我需要匹配一个简单的模式。以下内容应返回true, Pattern.matches("{\"user_id\" : [0-9]*}", inputLine) 当inputLine为 {"user_id" : 34} 但是,我收到此异常: java.util.regex.PatternSyntaxException: Illegal repetition {"user_id" : 24} at java.util.regex.Pattern.error(Unknown Source) at java.util.regex.Pattern.closure(Unknown Source) at java.util.regex.Pattern.sequence(Unknown Source) at java.util.regex.Pattern.expr(Unknown Source) at java.util.regex.Pattern.compile(Unknown Source) at java.util.regex.Pattern.<init>(Unknown Source) at java.util.regex.Pattern.compile(Unknown Source) at java.util.regex.Pattern.matches(Unknown Source) at org.whispercomm.manes.server.http.IntegrationTest.createUser(IntegrationTest.java:173) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown …
95 java  regex  matcher 


5
如何使用sed从字符串中提取文本?
我的示例字符串如下: This is 02G05 a test string 20-Jul-2012 现在我要从上面的字符串中提取02G05。为此,我用sed尝试了以下正则表达式 $ echo "This is 02G05 a test string 20-Jul-2012" | sed -n '/\d+G\d+/p' 但是上面的命令什么都不打印,我相信这是因为它无法与我提供给sed的模式相匹配。 所以,我的问题是我在这里做错了什么以及如何纠正它。 当我使用python尝试上述字符串和模式时,得到了我的结果 >>> re.findall(r'\d+G\d+',st) ['02G05'] >>>
95 regex  bash  sed 

2
正则表达式匹配一个数字两次或四次
这是一个关于正则表达式的简单问题,但我找不到答案。 我想确定一个数字是否恰好出现两次或四次。我可以使用什么语法? \d{what goes here?} 我试过了\d{2,4},但是这个表达式也接受三个数字。
95 regex  numbers 



9
R中具有多个捕获组的正则表达式组捕获
在R中,是否可以从正则表达式匹配中提取组捕获?据我所知,没有一个grep,grepl,regexpr,gregexpr,sub,或gsub返回组捕获。 我需要从这样编码的字符串中提取键值对: \((.*?) :: (0\.[0-9]+)\) 我总是可以做多个完全匹配的抓图,或者做一些外部(非R)处理,但是我希望可以在R中完成所有这些工作。是否有提供此功能的函数或程序包?

10
计算机是否可以通过用户提供的示例“学习”正则表达式?
计算机是否可以通过用户提供的示例“学习”正则表达式? 澄清: 我不是想学正则表达式。 我想创建一个程序,该程序从用户交互提供的示例中“学习”正则表达式,也许可以通过从文本中选择部分或选择开始或结束标记来实现。 可能吗?我可以使用Google提供的算法,关键字等吗? 编辑:谢谢您的答案,但我对提供此功能的工具不感兴趣。我正在寻找理论信息,例如论文,教程,源代码,算法名称,因此我可以为自己创建一些东西。

16
以大写字母分割字符串
在出现给定字符集之前将字符串拆分的pythonic方法是什么? 例如,我想'TheLongAndWindingRoad' 在出现大写字母(可能除了第一个大写字母)时进行拆分 ,并获取 ['The', 'Long', 'And', 'Winding', 'Road']。 编辑:它也应该拆分单次出现,即从'ABC'我想获得 ['A', 'B', 'C']。
94 python  regex  string 

3
正则表达式/ _ / g是什么意思?
JavaScript: .replace(/_/g," "); 我在我的代码中有它,但是不记得它为什么或做什么!你们其中一位正则表达式专家可以提供帮助吗? 我知道这似乎很基本,但是正则表达式不是我的最佳选择,而谷歌搜索/g并没有太大帮助。
94 javascript  regex 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.