我有输入字符串"\\{\\{\\{testing}}}",我想删除所有"\".要求o/p : "{{{testing}}}".
我正在使用以下代码来完成此任务.
protected String removeEscapeChars(String regex, String remainingValue) {
Matcher matcher = Pattern.compile(regex, Pattern.CASE_INSENSITIVE).matcher(remainingValue);
while (matcher.find()) {
String before = remainingValue.substring(0, matcher.start());
String after = remainingValue.substring(matcher.start() + 1);
remainingValue = (before + after);
}
return remainingValue;
}
Run Code Online (Sandbox Code Playgroud)
我正在通过正则表达式"\\\\{.*?\\\\}".
代码仅在第一次出现"\ {"时正常工作,但不适用于所有出现的情况.查看以下输出以了解不同的输入.
"\\{testing}"- o/p:"{testing}" "\\{\\{testing}}"- o/p:"{\\{testing}}""\\{\\{\\{testing}}}"- o/p:"{\\{\\{testing}}}" 我想要"\"从传递的i/p字符串中删除,所有"\\{"应该替换为"{".
我觉得问题在于正则表达式值,即"\\\\{.*?\\\\}".
任何人都可以让我知道什么应该是获得所需的o/p的正则表达式值.
我ProgressMonitorDialog用来显示长时间运行过程的进度对话框.
Shell shell = HandlerUtil.getActiveWorkbenchWindow(event).getShell();
shell.setText("HTML result loading");
shell.update();
ProgressMonitorDialog dialog = new ProgressMonitorDialog(shell);
dialog.setCancelable(true);
dialog.run(true, true, new IRunnableWithProgress() {
@Override
public void run(IProgressMonitor monitor) throws InterruptedException {
monitor.beginTask(ResourceAssistant.getString(ViewAsHTML.class, "loadingHTMLResults"), //$NON-NLS-1$
IProgressMonitor.UNKNOWN);
while (!thread.getState().equals(Thread.State.TERMINATED)) {
if (monitor.isCanceled()) {
setCanceled(true);
break;
}
}
monitor.done();
}
});
Run Code Online (Sandbox Code Playgroud)
我想更改进度对话框的标题.默认情况下,它显示为"进度信息".我怎么能改变这个.有什么想法吗.
我有一个批处理脚本:
echo on
Set appdir=This is testing for substring : Management\s18vx
ECHO %appdir%
REM get substring i.e, s18vx
Set SubStr = %appdir:~43%
ECHO %SubStr%
cmd /k
Run Code Online (Sandbox Code Playgroud)
获取子字符串后,我将其设置为新变量。在 Echo 上,此变量不打印任何内容。不知道这里出了什么问题。基本上我想用提取的字符串填充新变量,即本例中的 s18vx 。