[英]Using a variable in a \x hex regular expression pattern
我嘗試按字節值分割一些String。 就像“第一個\\ x00秒”由0x00分隔符表示。 我發現編譯器無法將\\ x令牌與變量結合在一起。
static public ArrayList split_by_byte(String value, byte spliter) {
if (spliter < 0)
throw new IllegalArgumentException("Отрицательное значение разделителя: " + spliter);
ArrayList<String> result = new ArrayList();
String[] groups = value.split("[\\x" + spliter + "]");
for (String group : groups) {
result.add(group);
}
return result;
}
如何在\\ xNN之類的模式中使用變量值?
在正則表達式中,不能在單引號/非插值字符串中使用\\ x。 它必須由詞法分析器看到。
因為代字號不是元字符。
添加使用正則表達式“調試”,您將看到實際發生的情況。
您還可以使用模式和匹配器類以及拆分方法...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.