Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/25.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
Excel 如何在保留其他文本的同时删除字符串中括号内的文本?_Excel_Perl_Spreadsheet_Substitution - Fatal编程技术网

Excel 如何在保留其他文本的同时删除字符串中括号内的文本?

Excel 如何在保留其他文本的同时删除字符串中括号内的文本?,excel,perl,spreadsheet,substitution,Excel,Perl,Spreadsheet,Substitution,我有上面的代码,它从excel文件中获取数据,然后从指定的单元格中提取文本,并从字符串中删除括号。我需要能够删除括号内的所有内容,包括括号本身,同时保留文本的其余部分。字符串的格式与以下内容完全相同:text(text) 解释: s/进行搜索 \转义下一个括号,因为如果未转义,它将被视为代码的一部分。 (.*?\)这里我们说的是我们在搜索什么,我们使用的是非贪婪。*?要将任何内容与最后一个括号再次匹配,最后一个括号将通过\ /开始搜索的替换功能 /结束搜索和替换 所以我们搜索(*),然后替换为空

我有上面的代码,它从excel文件中获取数据,然后从指定的单元格中提取文本,并从字符串中删除括号。我需要能够删除括号内的所有内容,包括括号本身,同时保留文本的其余部分。字符串的格式与以下内容完全相同:
text(text)

解释:

s/
进行搜索
\
转义下一个括号,因为如果未转义,它将被视为代码的一部分。
(.*?\)
这里我们说的是我们在搜索什么,我们使用的是非贪婪。*?要将任何内容与最后一个括号再次匹配,最后一个括号将通过
\
/
开始搜索的替换功能
/
结束搜索和替换

所以我们搜索(*),然后替换为空

解释非贪婪与贪婪

.*贪婪将一直匹配到找到最后一个

因此,如果我们有
字符串((子字符串)结尾)
,那么s/(.*)/
将从第一个
一直到最后一个
留给您
字符串

非贪婪不会,它将从第一个
到第一个
开始,给你留下
stringend)
,因此它将是懒惰的,只匹配你所要求的,贪婪将匹配的从(到)抓取一切,即使你有这个
(string)(())((strings))(strings)strings)

解释:

s/
进行搜索
\
转义下一个括号,因为如果未转义,它将被视为代码的一部分。
(.*?\)
这里我们说的是我们在搜索什么,我们使用的是非贪婪。*?要将任何内容与最后一个括号再次匹配,最后一个括号将通过
\
/
开始搜索的替换功能
/
结束搜索和替换

所以我们搜索(*),然后替换为空

解释非贪婪与贪婪

.*贪婪将一直匹配到找到最后一个

因此,如果我们有
字符串((子字符串)结尾)
,那么s/(.*)/
将从第一个
一直到最后一个
留给您
字符串


非贪婪不会,它将从第一个
到第一个
开始,给你留下
stringend)
,因此它将是懒惰的,只匹配你所要求的,贪婪将匹配的从(到)抓取一切,即使你有这个
(string)(())((strings))()strings)strings)

如果没有嵌套的括号,则此替换可以:

$send =~ s/\(.*?\)//;
如果这些括号始终是文本中的最后一项,则可以进一步简化为:

$send =~ s/\(.*?\)//;

如果没有嵌套的括号,则此替换可以:

$send =~ s/\(.*?\)//;
如果这些括号始终是文本中的最后一项,则可以进一步简化为:

$send =~ s/\(.*?\)//;

我可以问一下为什么这个小组?谢谢,它很有效!但是你能解释一下吗,或者给我指一个我可以学会理解的地方吗?太棒了,我只是喜欢理解人们帮助我的任何代码,而不仅仅是一个复制粘贴的忍者:)没问题。。更新了一个非常基本的解释。所以是“贪婪”,基本上是“一切”,我可以问一下为什么该集团?谢谢,它的工作!但是你能解释一下吗,或者给我指一个我可以学会理解的地方吗?太棒了,我只是喜欢理解人们帮助我的任何代码,而不仅仅是一个复制粘贴的忍者:)没问题。。更新了一个非常基本的解释,“贪婪”也是如此,基本上是“一切”