groovy - 在 Groovy 中使用通配符查找函数
问题描述
我正在将文件分析为文本,我需要在标签中找到该值的第一次出现。
我试过这个:
def ProcessName = (stringFile =~ "<Name>\d+</Name>");
和这个:
def ProcessName = (stringFile =~ "<Name>[\d+]</Name>");
但两者都抛出相同的错误:
Script6.groovy: 45: unexpected char: '\' @ line 45, column 45. sName = (stringFile =~ "\d+ ^ 1 error (in groovy2 script);
也许我在表达通配符错误?
这是那部分的代码:
def stringFile = is.getText();
def ProcessName = (stringFile =~ "<Name>\d+</Name>");
正在通过输入流检索字符串并包含“Test”
解决方案
使用正则表达式处理 XML 文件并不是一个理想的解决方案,但是,要使您的正则表达式工作,您需要转义字符串中的反斜杠:
def processName = (stringFile =~ "<Name>\\d+</Name>")
推荐阅读
- java - 在不同于 8080 的端口上启动 jar 打包为 exe
- jackson - 为什么在 OSGi + JAX-RS (CXF rsServer) 环境中无法识别我的 Jackson 注释?
- python - 返回多个值的 Python 查找表
- c++ - 通过消息队列按地址设置指针的值
- python - 如何让 SECURE_REDIRECT_EXEMPT 工作?
- jquery - 在花式树中添加水平分隔符/边框
- c# - WPF 动态视图框未显示在我的窗口中
- kubernetes - helm patch 默认服务帐号
- c++ - 一个有 64 个圆盘的河内塔需要多长时间才能递归求解?C++
- c# - 是否可以顺利“热部署”一个 ASP.NET Core 应用程序?