当数据不是一个list时,情况就不同了。
[] extracts a list, [[]] extracts elements within the list
The [[ form allows only a single element to be selected using integer or character indices, whereas [ allows indexing by vectors.
令一个区别是 [[ 可通过参数“exact”激活模糊匹配,[]则不行。
参考文献1: https://blog.csdn.net/yiifaa/article/details/73252980
参考文献2: https://ask.csdn.net/questions/707505 :
p匹配的是它自己,这就是原义表达式。
本来只想匹配 . ,但是在这里这个点代表了所有字符,于是返回了1 2 3。这个. 就是一个转义表达式。
分别提取含7-9的数字或3-4的数字的字符串
^XX就是以XX开头的意思
当^放在方括号内是取非的意思
2{2,3}是寻找2倍重复了2到3次的意思
2{2,}是寻找2倍重复了大于2次(2到+无穷)的意思
fo+表示+紧跟着的o可以被重复1次或1次以上
大括号也可以起到这样的作用
若想让紧跟在o后面的对fo都起作用,需要小括号
与+用法一致。+表示重复了1次或1次以上,*表示0次或0次以上。
.* 可以匹配任意字符
管道符连接前后,符合其一即会被返回
\\b也可以起到一样的作用,但\\b更灵活,既可以放开头也可以放结尾。(\\b主要是匹配边界)
\的作用就是说明^不是开头的意思,是要去匹配这个符号
对所有的转义符号都适用