您能否解释如何获取代币[
和;
之间的子字符串
原始字符串:
a [
b [
text1;
text2;
c [
text3;
text4;
]
]
]
我想要的:
text1;
text2;
text3;
text4;
答案 0 :(得分:2)
快速方法是从后面搜索';'
,然后从该位置开始搜索'['
,并将结果字符串拆分为分号。重复相同的过程,直到找不到分号';'
。
更好的方法是使用单个规则编写一个简单的recursive descent parser:如果源中存在错误,检测将更加可靠。