StringFreeQ["string",patt]
StringFreeQ["string",{patt1,patt2,…}]
如果y没有子字符串匹配任一 patti,则给出 True.
StringFreeQ[{"string1","string2",…},patt]
对每一个 "stringi" 给出结果.
StringFreeQ[patt]
表示可应用于表达式的 StringFreeQ 的算符形式.
StringFreeQ
StringFreeQ["string",patt]
StringFreeQ["string",{patt1,patt2,…}]
如果y没有子字符串匹配任一 patti,则给出 True.
StringFreeQ[{"string1","string2",…},patt]
对每一个 "stringi" 给出结果.
StringFreeQ[patt]
表示可应用于表达式的 StringFreeQ 的算符形式.
更多信息和选项
- 字符串表达式 patt 可包含 StringExpression 中任何对象.
- StringFreeQ 接受以下选项:
-
IgnoreCase False 匹配时是否忽略大小写 - 设置选项为 IgnoreCase->True 使 StringFreeQ 不区分大小写.
- StringFreeQ[patt][expr] 等价于 StringFreeQ[expr,patt].
- StringFreeQ[BioSequence["type","seq"],patt] 根据 patt 检查字符串 "seq". 在这种情况下,patt 中的简并字母被解释为基于生物分子序列类型的通配符模式. 使用 Verbatim["patt"] 从字面上匹配简并字母.
- BioSequence 的文档列出了每种类型的生物分子序列支持的简并字母.
- 如果 StringFreeQ 运算的生物分子序列是环状的,则可以进行环绕匹配.
范例
打开所有单元 关闭所有单元基本范例 (3)
StringFreeQ["abcd", "a"]StringFreeQ["bcde", "b" ~~ __ ~~ "e"]StringFreeQ["bcde", "c" ~~ __ ~~ "t"]StringFreeQ[{"a", "b", "ab", "abcd", "bcde"}, "a"]使用 StringFreeQ 的算符形式:
StringFreeQ["a"]["abcd"]Select[{"CAC1", "CTG1", "ACT1", "CGA1", "CTC1"}, StringFreeQ["G"]]范围 (10)
StringFreeQ["abcade", x_ ~~ x_]StringFreeQ["a1 and a2", DigitCharacter..]StringFreeQ["abcde", RegularExpression["b.*d"]]StringFreeQ["bac 123", RegularExpression["a.*"] ~~ DigitCharacter..]StringFreeQ["31/12/2003", DatePattern[{"Day", "Month", "Year"}]]StringFreeQ["abcdabcdcd", {"abc", "cd"}]StringFreeQ["abcdabcdcd", "abc" | "cd"]StringFreeQ 自动线性作用于字符串列表:
StringFreeQ[{"ability", "listable", "argument"}, "a" ~~ __ ~~ "t" ~~ ___]StringFreeQ[BioSequence["DNA", "TCCCATCAATACCAC"], "CTT"]StringFreeQ[BioSequence["DNA", "ATGGC"], "AN"]StringFreeQ["ATGGC", "AN"]使用 Verbatim 检查是否缺少字面意义上的简并字母:
StringFreeQ[BioSequence["DNA", "ATGGC"], "A" ~~ Verbatim["N"]]StringFreeQ[BioSequence["DNA", "ANGGC"], "A" ~~ Verbatim["N"]]StringFreeQ[BioSequence["CircularDNA", "CAGGC"], "CCA"]StringFreeQ[BioSequence["CircularDNA", "CAGGC"], "CCT"]StringFreeQ[BioSequence["CircularDNA", "CAGGC"], "CCN"]选项 (2)
IgnoreCase (2)
使用 IgnoreCase->True,忽略大小写,查看是否含有子字符串:
StringFreeQ["BACCD", "ac", IgnoreCase -> False]StringFreeQ["BACCD", "ac", IgnoreCase -> True]StringFreeQ["ac", IgnoreCase -> True]["BACCD"]应用 (1)
grep[file_, patt_] := With[{data = Import[file, "Lines"]}, Pick[Transpose[{Range[Length[data]], data}], StringFreeQ[data, patt], False]]grep["ExampleData/USConstitution.txt", {"noon" , "day of"}]//TableForm属性和关系 (8)
StringFreeQ 逐项作用于第一个参数中的列表的各个元素:
StringFreeQ[{"aba", "bcd", "cea"}, "c"]StringFreeQ["string",{patt1,patt2,…}] 等价于 StringFreeQ["string",Alternatives[patt1,patt2,…]]:
StringFreeQ["cad", {"a", "b"}]StringFreeQ["cad", "a" | "b"]StringContainsQ["string",patt] 等价于 !StringFreeQ["string",patt]:
StringContainsQ["commit", "co"]StringFreeQ["commit", "co"]用 StringMatchQ 检查整个字符串是否与模式匹配:
StringMatchQ["commit", "om" ~~ __]当 StringMatchQ 为 True 时,StringFreeQ 通常返回 False:
StringMatchQ["commit", "co" ~~ __]StringFreeQ["commit", "co" ~~ __]用 StringStartsQ 检查字符串的开头是否与模式匹配:
StringStartsQ["commit", "om"]StringStartsQ 为 True 时,StringFreeQ 返回 False:
StringStartsQ["commit", "co"]StringFreeQ["commit", "co"]用 StringEndsQ 检查字符串的结尾是否与模式匹配:
StringEndsQ["commit", "om"]StringEndsQ 为 True 时,StringFreeQ 返回 False:
StringEndsQ["commit", "it"]StringFreeQ["commit", "it"]使用StringPosition 得到一个子串开始和结束的位置:
StringFreeQ["agaatcgagttgacacgaccgaaaacgacc", x_ ~~ x_]StringPosition["agaatcgagttgacacgaccgaaaacgacc", x_ ~~ x_]使用 StringCases 提取匹配于一个给定模式的子串:
StringFreeQ["abcadcacb", "a" ~~ x_ ~~ "c"]StringCases["abcadcacb", "a" ~~ x_ ~~ "c"]历史
2004年引入 (5.1) | 在以下年份被更新:2016 (10.4) ▪ 2020 (12.2)
文本
Wolfram Research (2004),StringFreeQ,Wolfram 语言函数,https://reference.wolfram.com/language/ref/StringFreeQ.html (更新于 2020 年).
CMS
Wolfram 语言. 2004. "StringFreeQ." Wolfram 语言与系统参考资料中心. Wolfram Research. 最新版本 2020. https://reference.wolfram.com/language/ref/StringFreeQ.html.
APA
Wolfram 语言. (2004). StringFreeQ. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/StringFreeQ.html 年
BibTeX
@misc{reference.wolfram_2026_stringfreeq, author="Wolfram Research", title="{StringFreeQ}", year="2020", howpublished="\url{https://reference.wolfram.com/language/ref/StringFreeQ.html}", note=[Accessed: 15-November-2026]}
BibLaTeX
@online{reference.wolfram_2026_stringfreeq, organization={Wolfram Research}, title={StringFreeQ}, year={2020}, url={https://reference.wolfram.com/language/ref/StringFreeQ.html}, note=[Accessed: 15-November-2026]}