Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.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
Regex 关于匹配和忽略空格的另一个正则表达式问题_Regex - Fatal编程技术网

Regex 关于匹配和忽略空格的另一个正则表达式问题

Regex 关于匹配和忽略空格的另一个正则表达式问题,regex,Regex,我已经花了好几个小时通过谷歌进行调查,但没有任何运气。我熟悉RegEx,但绝对不是专家 我需要做的是获取字符串'PAB 123 456'并返回令牌'AB123456' 背景: 我有一个通过条形码/二维码匹配产品的应用程序。该应用程序读取两个代码,并尝试计算它们是否相同。这是一个质量控制类型的应用程序,用.net编写 它所做的是使用两个正则表达式,比较每个正则表达式的第一个匹配项。如果它们是一样的。。。成功!有相当多的正则表达式对匹配不同的组合,应用程序只是依次尝试每一对 因此,使用类似于“(?的

我已经花了好几个小时通过谷歌进行调查,但没有任何运气。我熟悉RegEx,但绝对不是专家

我需要做的是获取字符串'PAB 123 456'并返回令牌'AB123456'

背景: 我有一个通过条形码/二维码匹配产品的应用程序。该应用程序读取两个代码,并尝试计算它们是否相同。这是一个质量控制类型的应用程序,用.net编写

它所做的是使用两个正则表达式,比较每个正则表达式的第一个匹配项。如果它们是一样的。。。成功!有相当多的正则表达式对匹配不同的组合,应用程序只是依次尝试每一对


因此,使用类似于“(?的正则表达式,可以使用如下内容:

P(AB)[ -]*(\d+)[ -]*(\d+)
然后引用
$1
$2
$3


您可以使用以下内容:

P(AB)[ -]*(\d+)[ -]*(\d+)
然后引用
$1
$2
$3


另一个答案是不可能在一个匹配操作中匹配和跳过一些字符。或者替换(如
*([A-Z]{3})([0-9]{3})([0-9]{3})。*
\1\2\3
)或者匹配然后删除空格作为后处理步骤。没有任何查找工具可以帮助您。我认为您不需要正则表达式,只需将所有空格替换为空字符(
'
)并删除第一个字符。我认为可以同时使用match和skip/replace,这就是我提出这个问题的原因。如果没有,则返回到visual studio以删除应用程序的新版本。感谢帮助。另一个答案是,在一个匹配操作中不可能匹配和跳过某些字符。替换或(如
*([A-Z]{3})([0-9]{3})([0-9]{3})。*
\1\2\3
匹配,然后删除空格作为后处理步骤。没有任何查找工具会帮到你。我认为你不需要正则表达式,只要用空字符替换所有空格(
'
)并删除第一个字符。我认为可以同时使用match和skip/replace,这就是我提出这个问题的原因。如果没有,那么它将返回visual studio以制作新版本的应用程序。感谢帮助这依赖于加入三个结果,因此需要重新编码,这是我想要避免的…但是看起来我们必须这样做。向函数中添加一个替换正则表达式将解决问题…我认为。这依赖于三个结果的合并,因此需要重新编码,这是我想要避免的…但看起来我们必须这样做。向函数中添加一个替换正则表达式将解决问题…我认为。