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_String_Replace - Fatal编程技术网

Regex 数字的正则表达式替换

Regex 数字的正则表达式替换,regex,string,replace,Regex,String,Replace,使用正则表达式如何用1186.55替换1186.55 我的搜索字符串是 \b[1-9],[0-9][0-9][0-9].[0-9][0-9] 这很好用。我似乎无法让替换部件正常工作。如果您只是想删除逗号,可以这样做(在java或C中): (在java中是replace)如果您只想删除逗号,您可以这样做(在java或C中): (在java中是replace)或在Perl中: s/(\d+),(\d+)/$1$2/ 或者在Perl中: s/(\d+),(\d+)/$1$2/ 你的问题中的信息非

使用正则表达式如何用1186.55替换1186.55

我的搜索字符串是

\b[1-9],[0-9][0-9][0-9].[0-9][0-9]

这很好用。我似乎无法让替换部件正常工作。

如果您只是想删除逗号,可以这样做(在java或C中):


(在java中是
replace

如果您只想删除逗号,您可以这样做(在java或C中):

(在java中是
replace

或在Perl中:

s/(\d+),(\d+)/$1$2/
或者在Perl中:

s/(\d+),(\d+)/$1$2/

你的问题中的信息非常稀少。我尽量笼统地回答:

您可以通过使用量词稍微缩短正则表达式,我将在第一步中实现这一点

\b[1-9],[0-9]{3}.[0-9]{2}
很可能您也可以用
\d
替换
[0-9]
,在IMO中也更具可读性

\b\d,\d{3}.\d{2}
现在我们可以开始更换零件了。在这里,您需要存储您想要保留的部件。您可以将该部分放入捕获组,并在其周围放置括号,这将是您的搜索模式:

\b(\d),(\d{3}.\d{2})
因此,现在您可以访问替换字符串中那些捕获组的匹配内容。第一个开口支架是第一组,第二个开口支架是第二组

现在有两种可能,您可以通过
\1
$1

您的替换字符串将是

\1\2

$1$2

你的问题中的信息非常稀少。我尽量笼统地回答:

您可以通过使用量词稍微缩短正则表达式,我将在第一步中实现这一点

\b[1-9],[0-9]{3}.[0-9]{2}
很可能您也可以用
\d
替换
[0-9]
,在IMO中也更具可读性

\b\d,\d{3}.\d{2}
现在我们可以开始更换零件了。在这里,您需要存储您想要保留的部件。您可以将该部分放入捕获组,并在其周围放置括号,这将是您的搜索模式:

\b(\d),(\d{3}.\d{2})
因此,现在您可以访问替换字符串中那些捕获组的匹配内容。第一个开口支架是第一组,第二个开口支架是第二组

现在有两种可能,您可以通过
\1
$1

您的替换字符串将是

\1\2

$1$2
Python:

def repl(initstr,多余=','):
res=设置(不需要)
返回“”。join(如果r不在res中,则r代表initstr中的r)
使用正则表达式:

从重新导入编译
regex=compile(r'([\d\.]]))
打印“”。连接(regex.findall('1186.55'))
使用方法:

num='1186.55'
打印“”。加入(num.split(','))
使用方法:

num='1186.55'
打印编号替换(',','')
Python:

def repl(initstr,多余=','):
res=设置(不需要)
返回“”。join(如果r不在res中,则r代表initstr中的r)
使用正则表达式:

从重新导入编译
regex=compile(r'([\d\.]]))
打印“”。连接(regex.findall('1186.55'))
使用方法:

num='1186.55'
打印“”。加入(num.split(','))
使用方法:

num='1186.55'
打印编号替换(',','')

只需将所有的
(逗号)替换为零?为什么要使用正则表达式?为什么不直接删除
?它是一个逗号删除的文件。替换所有逗号会破坏字段定义。正则表达式本身是模式匹配,替换匹配的部分取决于语言。在不知道语言的情况下,我们应该如何回答?文本编辑器中的标准正则表达式,不涉及语言。说真的,如果我知道如何用java编程,我就不会问这个问题了。只需将所有的
(逗号)替换为零?为什么要使用正则表达式?为什么不直接删除
?它是一个逗号删除的文件。替换所有逗号会破坏字段定义。正则表达式本身是模式匹配,替换匹配的部分取决于语言。在不知道语言的情况下,我们应该如何回答?文本编辑器中的标准正则表达式,不涉及语言。说真的,如果我知道如何用java编程,我就不会问这个问题了。