电脑
Mathematica
Mathematica用 StringCases进行字符串的匹配: StringCases['Mathematica用 StringCases进行字符串的匹配:', '用' ~~ __ ~~ ':']这个代码的作用,就是把前面字符串里面,'用'和':'之间的字符串匹配出来。
如果字符串里面有多个符合要求的子串,就会把所有的子串返回;如果没有符合要求的子串,就会返回空集: StringCases['如果字符串里面有多个符合要求的子串,就会把所有的子串返回; 如果有1个符合要求的子串,就会返回空集:', '有' ~~ _ ~~ '个']注意看,上面的代码和这里的代码,字符串的匹配规则不一样的。
IgnoreCase指定,是否忽略字母的大小写: StringCases['IgnoreCase specifies Whether to ignore the Letter \size:', 'i' ~~ __ ~~ 'o', IgnoreCase -> True]可以看到,有或没有IgnoreCase -> True,返回的结果还是有区别的。
找到以字母'a'开始的两个及以上字母的子串:StringCases['Find all the strings with two or more letters starting \with the letter a', 'a' ~~ LetterCharacter ..]返回结果是:{'all', 'arting'}注意,前面字符串最后面的a没有出现,因为它后面的字母数小于2。
这里有两个电话号码:(0531)19999999,(010)89590727,怎么把号码匹配出来?StringCases['这里有两个电话号码:(0531)19999999,(010)89590727,怎么把号码匹配出来?', '(' ~~ DigitCharacter .. ~~ ')' ~~ DigitCharacter ..]
学会了匹配字符串,那么我们就可以爬取网页的源代码,然后从源代码里面匹配出资源的url,接着下载,保存,就是一个简单的爬虫。
没错,字符串匹配,就是为爬虫服务的。