2015-03-24 87 views
2

考虑以下字符串:正则表达式:选择空间

<Node type="java script">dataSetRow["Invoice Number"]</Node> 
<Node type="java script">dataSetRow["Invoice Number 2"]</Node> 

如何将消除在文本编辑器使用正则表达式的括号之间的空间?例如,dataSetRow [“发票号码”]将出现在dataSetRow [“InvoiceNumber”]中。到目前为止,我能做的最好的是匹配括号内的所有文本。

(?<=dataSetRow\[)(.*)(?=\]) 

但是,我似乎无法匹配只是空格,以便我可以删除它们。任何帮助将不胜感激。

感谢

回答

2

这里是一步一步的指示:

  1. 打开查找和替换对话框
  2. 检查使用grep
  3. 搜索,类型(\[[^\]]*?)\s+
  4. 替换为,类型\1
  5. 点击全部替换几个倍直到不再进行替换(即,没有找到匹配)。
1

我不知道你所使用的编辑器 - 在vim我会做这样的:

:1,$ s/(\["\S*)\s+(\S*"\])/\1\2/ 

或类似的东西 - 我总是提醒自己,当VIM需要反斜线当它不喜欢的括号...

+0

我似乎无法得到它的工作,但它可能只是因为我使用TextWrangler而不是Vim。我会继续玩。感谢您的建议! – EasyComp 2015-03-24 23:28:59