regex - 删除新行,但如果包含在文本边界内则不删除
问题描述
我有多个这样的文本部分:
<par>
<button width="2in" maxlines="1">
<code event="onClick" for="web">
<javascript>doClose();
doRemove();
doNotify();</javascript>
</code>Close</button>
</par>
<par>
<button width="2in" maxlines="1">
<code event="onClick" for="web">
<javascript>doClose();
doRun();</javascript>
</code>Run</button>
</par>
我想删除<button>
元素中存在的任何新行,但如果它在 a<javascript>
元素中则不删除。我正在寻找的结果是这样的:
<par>
<button width="2in" maxlines="1"><code event="onClick" for="web"><javascript>doClose();
doRemove();
doNotify();</javascript></code>Close</button>
</par>
<par>
<button width="2in" maxlines="1"><code event="onClick" for="web"><javascript>doClose();
doRun();</javascript></code>Run</button>
</par>
这可以用一个正则表达式来完成吗?
原因:这里的问题是因为在<button>
元素text()
中有新行(例如在<button>
开始标记之后),元素的“标签”<button>
计算为“\nClose”和“\nRun”。所以我想消除 text() 中的新行,但保留其他新行(<javascript>
元素中的行)完好无损。
现在我正在仔细研究一下,也许我正在寻找的是在<button>
开始标记之后删除新行。嗯
(我正在使用java)
解决方案
推荐阅读
- php - 选择填充但不显示值 (php/msqli)
- firebase - Firebase - 是否可以在 Firebase Spark 计划中使用第三方服务提供商
- swift - 带有表单的 SwiftUI 模态表:设备旋转后左/右填充错误
- c# - Unity:如何创建陆地事件 c#
- docker - 如何在 alfresco 6.2 docker 容器中安装 salesforce 内容连接器放大器
- python - 即使我安装了请求的 MovieWriter (ffmpeg) 也不可用
- python - 使用 argparse 在代码中的特定点使用函数?
- mysql - 使用 concat 的基于时间的动态列名
- design-patterns - 会话/缓存设计模式前面的服务
- c - 通过 IOCTL 将字符串传递给内核模块时的奇怪行为