Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 用于(+918047093311)或(+918061914444引脚6251)的正则表达式_Java_Regex - Fatal编程技术网

Java 用于(+918047093311)或(+918061914444引脚6251)的正则表达式

Java 用于(+918047093311)或(+918061914444引脚6251)的正则表达式,java,regex,Java,Regex,我正在尝试编写一个正则表达式,用于从字符串+918047093311或+918061914444引脚6251或08061914444引脚6251中提取+91xxxxxxxxx或0XXXXXXXXX 我想读懂括号内的内容,然后取+91或0后跟10位数字(仅从9、8、7和6开始)的数字 到目前为止,我能够制作这个->^[0]\+91?[6789]\d{9}$ 它能够检测从+91或0开始的数字,然后检测从6、7、8或9开始的10位数字 请帮助了解您的定义,这应该有效 $ echo "I am

我正在尝试编写一个正则表达式,用于从字符串+918047093311或+918061914444引脚6251或08061914444引脚6251中提取+91xxxxxxxxx或0XXXXXXXXX

我想读懂括号内的内容,然后取+91或0后跟10位数字(仅从9、8、7和6开始)的数字

到目前为止,我能够制作这个->^[0]\+91?[6789]\d{9}$

它能够检测从+91或0开始的数字,然后检测从6、7、8或9开始的10位数字


请帮助

了解您的定义,这应该有效

$ echo "I am trying to write a regex for extracting a +91XXXXXXXXXX or 0XXXXXXXXX from the string (+918047093311) or (+918061914444 PIN 6251) or (08061914444 PIN 6251)." | 
  grep -oE '(?<=\()?(0|\+91)?[6-9][0-9]{9}(?=( |\)))?'

根据你的定义,这应该是可行的

$ echo "I am trying to write a regex for extracting a +91XXXXXXXXXX or 0XXXXXXXXX from the string (+918047093311) or (+918061914444 PIN 6251) or (08061914444 PIN 6251)." | 
  grep -oE '(?<=\()?(0|\+91)?[6-9][0-9]{9}(?=( |\)))?'
使用

看。表达式匹配零或+91作为可选值,然后匹配6789集合中的一个数字,然后匹配九个数字

爪哇:

输出:

+918047093311
+918061914444
8061914444
使用

看。表达式匹配零或+91作为可选值,然后匹配6789集合中的一个数字,然后匹配九个数字

爪哇:

输出:

+918047093311
+918061914444
8061914444

正则表达式没有做什么是你希望它做的?正则表达式没有做什么是你希望它做的?
+918047093311
+918061914444
8061914444