Java 如何使用正则表达式在句子之间添加文本?
我的意见是Java 如何使用正则表达式在句子之间添加文本?,java,regex,string,Java,Regex,String,我的意见是 <option value="" disabled selected hidden> 输出应如下所示: <option value="" disabled="disabled" selected="selected" hidden=""> 然后我尝试了这个代码 final String REGEX_DISABLED = "(?<=option value=\"\" disabled)(?=.*)"; final String
<option value="" disabled selected hidden>
输出应如下所示:
<option value="" disabled="disabled" selected="selected" hidden="">
然后我尝试了这个代码强>
final String REGEX_DISABLED = "(?<=option value=\"\" disabled)(?=.*)";
final String REPLACE_DISABLED = "=\"disabled\"";
Pattern disP = Pattern.compile(REGEX_DISABLED);
Matcher disM = disP.matcher(text);
text = disM.replaceAll(REPLACE_DISABLED);
final String REGEX_SELECTED = "(?<==\"disabled\" selected)(?=.*)";
final String REPLACE_SELECTED = "=\"selected\"";
Pattern selP = Pattern.compile(REGEX_SELECTED);
Matcher selM = selP.matcher(text);
text = selM.replaceAll(REPLACE_SELECTED);
final String REGEX_HIDDEN = "(?<==\"selected\" hidden)(?=.*)";
final String REPLACE_HIDDEN = "=“”";
Pattern hidP = Pattern.compile(REGEX_HIDDEN);
Matcher hidM = hidP.matcher(text);
text = hidM.replaceAll(REPLACE_HIDDEN);
final String REGEX_DISABLED=“(?尝试以下操作:
"<option(.*?)\\s+(disabled)\\s+(selected)\\s+(hidden)>"
“”
JAVA示例
final String regex = "<option(.*?)\\s+(disabled)\\s+(selected)\\s+(hidden)>";
final String string = "<option value=\"\" disabled selected hidden>\n\n"
+ "<option value=\"adfsa\" disabled selected hidden>\n\n"
+ "<option value=\"111\" disabled selected hidden>\n\n\n\n";
final String subst = "<option $1 $2=\"disabled\" $3=\"disabled\" $4=\"hidden\">";
final Pattern pattern = Pattern.compile(regex);
final Matcher matcher = pattern.matcher(string);
// The substituted value will be contained in the result variable
final String result = matcher.replaceAll(subst);
System.out.println("Substitution result: " + result);
最终字符串regex=”“;
final String=“\n\n”
+“\n\n”
+“\n\n\n\n”;
最终字符串subst=“”;
最终模式=Pattern.compile(regex);
final Matcher Matcher=pattern.Matcher(字符串);
//被替换的值将包含在结果变量中
最终字符串结果=matcher.replaceAll(subst);
System.out.println(“替换结果:+结果”);
试试这个:
"<option(.*?)\\s+(disabled)\\s+(selected)\\s+(hidden)>"
“”
JAVA示例
final String regex = "<option(.*?)\\s+(disabled)\\s+(selected)\\s+(hidden)>";
final String string = "<option value=\"\" disabled selected hidden>\n\n"
+ "<option value=\"adfsa\" disabled selected hidden>\n\n"
+ "<option value=\"111\" disabled selected hidden>\n\n\n\n";
final String subst = "<option $1 $2=\"disabled\" $3=\"disabled\" $4=\"hidden\">";
final Pattern pattern = Pattern.compile(regex);
final Matcher matcher = pattern.matcher(string);
// The substituted value will be contained in the result variable
final String result = matcher.replaceAll(subst);
System.out.println("Substitution result: " + result);
最终字符串regex=”“;
final String=“\n\n”
+“\n\n”
+“\n\n\n\n”;
最终字符串subst=“”;
最终模式=Pattern.compile(regex);
final Matcher Matcher=pattern.Matcher(字符串);
//被替换的值将包含在结果变量中
最终字符串结果=matcher.replaceAll(subst);
System.out.println(“替换结果:+结果”);
您似乎打算对XML数据进行“语法上”正确的更改。提示:然后使用理解XML的工具。XML和正则表达式本身并不是一个好的组合。因为后者根本无法涵盖正确XML可能使用的所有选项。例如,请参阅“更正对XML数据的更改。提示:然后使用理解XML的工具。XML和正则表达式本身不是一个好的组合。因为后者根本无法涵盖正确XML可能使用的所有选项。请参见示例谢谢!这非常有帮助!谢谢!这非常有帮助!”!