[英]question about prefix and suffix in java
我有一個問題,我需要您的幫助!我有一個特定的REGEX,我將其命名為“ unique”,我想存儲它給我的數據! 這個正則表達式的前綴和后綴!!所以!!有人告訴我使用
var前綴和
var后綴
但是我不知道該怎么做!
為了您的方便,我給我這個正則表達式的xml
<reg name="unique">
<start><![CDATA[ <!-- 72 HOURS FORECASTS -->
]]></start>
<end><![CDATA[<!-- 72 HOURS FORECASTS -->]]></end>
</reg>
我稱之為正則表達式的代碼是
int k = 0;
for(Xml reg_is:fetchsite.child("site").child("regexps").children("reg")) {
if(reg_is.string("name").contains("unique")){
if(reg_is.child("start").content()=="")
error += "\tNo prefix reg.exp. given.\n";
else
prefix = HtmlMethods.removeBreaks(replaceVariables(reg_is.child("start").content()));
if(reg_is.child("end").content()=="")
error += "\tNo suffix reg.exp. given.\n";
else
suffix = HtmlMethods.removeBreaks(replaceVariables(reg_is.child("end").content()));
}
else{
poleis[k][0]= HtmlMethods.removeBreaks(reg_is.string("name"));
poleis[k][1] = HtmlMethods.removeBreaks(replaceVariables(reg_is.child("start").content()));
poleis[k][2] = HtmlMethods.removeBreaks(replaceVariables(reg_is.child("end").content()));
k++;
}
關於您的代碼的一些一般注釋:
使用==檢查String
相等是錯誤的 ! 改用equals()
方法:
reg_is.child("end").content().equals("")
另外,如果要將String
變量與硬編碼的String
,最好將硬編碼的String放在首位。 這樣,如果變量為null,則您的程序將不會拋出NullPointerException
(因為硬編碼的String
永遠不能為null!)
"".equals(reg_is.child("end").content())
在進行大量String
串聯時,使用StringBuilder
效率更高:
StringBuilder error = new StringBuilder(); error.append("\\tNo prefix reg.exp. given.\\n");
就像奧斯卡·雷耶斯(Oscar Reyes)所說的那樣,如果語句始終使用大括號 ,這是安全的。 如果您添加一行而忘記添加花括號,則可能會浪費大量時間來查找錯誤。 我知道這件事發生在我之前...
if(reg_is.child("start").content()==""){ error += "\\tNo prefix reg.exp. given.\\n"; } else { prefix = HtmlMethods.removeBreaks(replaceVariables(reg_is.child("start").content())); }
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.