Java 如何仅匹配行中第一次出现的空格
我被困在一个很简单的步骤上 我同意以下文字Java 如何仅匹配行中第一次出现的空格,java,regex,Java,Regex,我被困在一个很简单的步骤上 我同意以下文字[[StandardsEnterprise GXS Enterprise]] 并希望用管道(“|”)替换第一个空间 找不到空间的select only的正则表达式 或者,问题可能出在Java代码上。 我在SAG WebMethods中使用java,包括以下内容: IDataCursor pipelineCursor = pipeline.getCursor(); String regex = IDataUtil.getString(pip
[[StandardsEnterprise GXS Enterprise]]
并希望用管道(“|”)替换第一个空间
找不到空间的select only的正则表达式
或者,问题可能出在Java代码上。
我在SAG WebMethods中使用java,包括以下内容:
IDataCursor pipelineCursor = pipeline.getCursor();
String regex = IDataUtil.getString(pipelineCursor, "regex");
String input = IDataUtil.getString(pipelineCursor, "input");
String replacement = IDataUtil.getString(pipelineCursor, "replacement");
pipelineCursor.destroy();
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(input);
String output = matcher.replaceAll(replacement);
....
.replaceAll
方法不存在问题吗?不是在输入字符串上重复应用正则表达式吗
你有什么简单的建议吗
非常感谢
Reddy您只需通过管道更换一次空间 使用regex是一件非常简单的事情,如下所示:
\s+
根据您使用的语言,您可以
PHP
JAVASCRIPT
var re = /\s+/;
var str = '[[StandardsEnterprise GXS Enterprise]]';
var subst = '|';
var result = str.replace(re, subst);
蟒蛇
import re
p = re.compile(ur'\s+')
test_str = u"[[StandardsEnterprise GXS Enterprise]]"
subst = u"|"
result = re.sub(p, subst, test_str)
爪哇
你好,联邦快递,非常感谢你的回复。我正在使用Java服务。我会详细说明这个请求。@ReddySK很好,很乐意帮助。
import re
p = re.compile(ur'\s+')
test_str = u"[[StandardsEnterprise GXS Enterprise]]"
subst = u"|"
result = re.sub(p, subst, test_str)
String result = "[[StandardsEnterprise GXS Enterprise]]".replaceFirst("\\s+", "|");
System.out.println(result);
// Prints:
// [[StandardsEnterprise|GXS Enterprise]]