regex - 正则表达式只匹配特定的空格
问题描述
我有一些我想使用正则表达式缩小的 javascript 代码。
我的目标是把这个:
function mFunct(variable){
var a, b, c;
new Class();
}
进入这个:
function mFunct(variable){var a,b,c;new Class();}
我试过这个正则表达式:
(?:(new|var|function)\s)|\s
但它var a
从 javascript 代码中选择,其中包含一个关键的空格。
如何更改正则表达式使其不选择它?
解决方案
您可以使用否定的lookbehind来确保只匹配关键字前面没有的空格:
(?<!function|var|new)\s
见这里。我们看不到突出显示的换行符,它们没有宽度,但在右侧的列表中,您可以看到匹配的字符。删除所有这些匹配的字符应该会给出所需的输出。
推荐阅读
- cobol - 将整数从 InFile 转换为 OutFile 作为 Cobol 中的浮点数
- bluetooth - 低功耗蓝牙重量测量特性时间戳
- swift - MapAnnotation 按钮操作不起作用(SwiftUI 2.0 地图)
- google-cloud-platform - 通过对话流代理从 Google Cloud Datastore 读取数据
- typescript - 如何让 jasmine.json 包含我的声明合并文件?
- python - 如何选择使用哪种字符编码?
- python - 编写一个程序,读取一个字符串并打印它是否
- excel - 细致入微的 Excel 问题;计算比例
- javascript - 通过javascript获取表单字段数据会抛出错误(值为null)
- reactjs - React ENV 和 axios url 获取