大规模正则表达组取代

时间:2016-04-30 13:02:51

标签: html css regex

我是一个完整的菜鸟,这个整个正则表达式,我不是程序员,但愿意学习新事物。是否可以在regexr或notepad ++ regex中添加自定义正则表达式替换?

我的意思是,如果您查看下面的示例,结果会将替换正则表达式识别为字符串字符。例如:http://regexr.com/3db5p

例如,我该如何找到

([.])[ ]{1,}([A-Z])\w+\s\s([a-z])\w+

并将其更改为

([.])[ ]{1,}{[A-Z]}\w+\s\s\s([a-z])\w+

一直保持角色以及所有这些:

输入样本:http://regexr.com/3db65

到此:

输出样本:http://regexr.com/3db68

(所以我只想添加一个空格而不影响其余部分)

因为我有很多文本满足这个特定模式,我只想改变那些而不影响其余模式。

编辑:我在这里有另外一个额外的示例,包含整个文本的长度(在其他20个文件中有更多的模式:http://regexr.com/3db5p(284个匹配)。

我有多个实例,我需要精确地更改这些模式,而不会弄乱其他具有双空格的部分(这些部分遍布整个地方)。

这就是为什么找到只包含两个或更多空格的表达式并替换它不会完成我正在做的任务的原因。

感谢您的所有快速回复!非常感激!随意给我任何创意和创造性的建议! (比如使用其他编辑或编程语言)非常欢迎他们!

3 个答案:

答案 0 :(得分:1)

您只需将/ {2,}/替换为空格,请参阅 demo

答案 1 :(得分:0)

你需要用一个替换两个或更多空格的正则​​表达式是:

\s{2,}

http://regexr.com/3db5v

PHP示例

<?php
$text = "Budgeting  After studying this chapter";
echo preg_replace('/\s{2,}/i', ' ', $text);
//Budgeting After studying this chapter

答案 2 :(得分:0)

解决!
所以在regexr中,显然,我需要将find更改为this(制作一个组):
([。])[] {1,}([A-Z] \ w +)[] {2,}([a-z] \ w +)

替代:
<强> $ 1 $ 2 $ 3