StringCount["string","sub"]
"sub"が"string"の部分文字列として現れる回数を与える.
StringCount["string",patt]
"string"中で一般的な文字列式 patt にマッチする部分文字列の数を与える.
StringCount["string",{patt1,patt2,…}]
任意の pattiの出現回数を数える.
StringCount[{s1,s2,…},p]
各 siの結果のリストを与える.
StringCount
StringCount["string","sub"]
"sub"が"string"の部分文字列として現れる回数を与える.
StringCount["string",patt]
"string"中で一般的な文字列式 patt にマッチする部分文字列の数を与える.
StringCount["string",{patt1,patt2,…}]
任意の pattiの出現回数を数える.
StringCount[{s1,s2,…},p]
各 siの結果のリストを与える.
詳細とオプション
- 文字列式 patt は,StringExpressionの注釈で指定されているどのオブジェクトでも含むことができる.
- StringCountは次のオプションを取る.
-
IgnoreCase False 大文字小文字を区別するマッチをオフにするかどうか Overlaps False which overlapping matches to include - デフォルトのオプション設定Overlaps->Falseでは,重複する部分文字列は別個のものとしては数えられない.設定をOverlaps->Trueにすると,StringCountはそのような部分文字列を別のものとして扱うようになる.
- Overlaps->Allと設定すると,同一の文字列式にマッチする複数の部分文字列はすべて別々なものとして数えられる.設定をOverlaps->Trueにすると,指定の位置から始めて最初にマッチする部分文字列だけが別なものとして数えられる.
- オプション設定IgnoreCase->Trueの場合,StringCountは大文字と小文字を同じものとして扱う.
- StringCount["string",RegularExpression["regex"]]は,指定された正規表現にマッチする部分文字列の数を与える.
- StringCount[BioSequence["type","seq"],patt]は文字列"seq"中で patt とのマッチの数を数える.この場合,patt 中の縮重記号は,生体分子配列のタイプに基づいて,ワイルドカードパターンとして解釈される.Verbatim["patt"]を使って縮重記号を文字通りマッチする.
- BioSequenceのドキュメントには,各生体分子配列タイプについてサポートされる縮重記号がリストされている.
- StringCountが操作する生体分子配列が環状の場合は,ラップアラウンドマッチが可能である.
例題
すべて開く すべて閉じる例 (2)
スコープ (8)
StringCount["the cat in the hat", "cat"]StringCount["the cat in the hat", "a" ~~ __ ~~ "e"]StringCount["11a22b3", DigitCharacter..]StringCount["11a22b3", _ ? LetterQ]StringCount["a1b22c333", RegularExpression["..2"]]StringCount["the cat in the hat", RegularExpression["(?<=the )"] ~~ WordCharacter..]StringCount["abcdabcdcd", {"abc", "cd"}]StringCount["abcdabcdcd", "abc" | "cd"]StringCountは自動的に文字列のリストに縫い込まれる:
StringCount[{"ability", "argument", "listable"}, "a" ~~ ___ ~~ "l"]StringCount[BioSequence["DNA", "CTGGCGGTGG"], "GG" ~~ ("C" | "T")]特定の生体分子配列で数えられたパターンでワイルドカードを使う:
StringCount[BioSequence["DNA", "CTGGCGGTGGYGG"], "GGY"]"Y"は,生体分子配列以外では,縮重記号でワイルドカードではない:
StringCount["CTGGCGGTGGYGG", "GGY"]追加のラップアラウンドマッチを使うと,循環的な生体分子配列で見付かるかもしれない:
StringCount[BioSequence["CircularDNA", "CTGGCGGTGGYGG"], "GGY"]Verbatimを使って文字通りの縮重記号だけを数える:
StringCount[BioSequence["CircularDNA", "CTGGCGGTGGYGG"], Verbatim["GGY"]]オプション (3)
IgnoreCase (1)
Overlaps (2)
"the cat in the hat"中の"t"で始まって"t"で終る部分文字列すべて:
StringCases["the cat in the hat", "t" ~~ __ ~~ "t", Overlaps -> All]StringCountはデフォルトでは重複は含まない:
StringCount["the cat in the hat", "t" ~~ __ ~~ "t"]StringCount["the cat in the hat", "t" ~~ __ ~~ "t", Overlaps -> True]StringCount["the cat in the hat", "t" ~~ __ ~~ "t", Overlaps -> All]StringCount[BioSequence["CircularDNA", "GATTGGTTTGCTTCATTCGTT", {}], "TTNNTT"]StringCount[BioSequence["CircularDNA", "GATTGGTTTGCTTCATTCGTT", {}], "TTNNTT", Overlaps -> True]アプリケーション (3)
SeedRandom[1234];
dna = StringJoin[RandomChoice[{"a", "c", "g", "t"}, 10 ^ 7]];StringCount[dna, "a" ~~ y_ ~~ _ ~~ y_ ~~ "a"]StringCount[Import["ExampleData/USConstitution.txt"], WordCharacter..]"president"という単語が何回使われているかを求める:
StringCount[Import["ExampleData/USConstitution.txt"], "president", IgnoreCase -> True]長さが4で2つの文字からなりそれ自身が重複する文字列のすべて:
StringJoin /@ Tuples[{"A", "B"}, 4]Select[%, StringCount[# ~~ #, #, Overlaps -> True] > 2&]特性と関係 (1)
StringCountはマッチする部分文字列の数を与える:
StringCount["abaababba", "a" ~~ ___ ~~ "b", Overlaps -> All]StringCasesから得たマッチする部分文字列の長さ:
Length @ StringCases["abaababba", "a" ~~ ___ ~~ "b", Overlaps -> All]テクニカルノート
-
▪
- 文字列の操作 ▪
- 特殊文字 ▪
- 文字列パターン ▪
- 文字列パターンの操作
履歴
2004 で導入 (5.1) | 2020 で更新 (12.2)
テキスト
Wolfram Research (2004), StringCount, Wolfram言語関数, https://reference.wolfram.com/language/ref/StringCount.html (2020年に更新).
CMS
Wolfram Language. 2004. "StringCount." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2020. https://reference.wolfram.com/language/ref/StringCount.html.
APA
Wolfram Language. (2004). StringCount. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/StringCount.html
BibTeX
@misc{reference.wolfram_2026_stringcount, author="Wolfram Research", title="{StringCount}", year="2020", howpublished="\url{https://reference.wolfram.com/language/ref/StringCount.html}", note=[Accessed: 01-November-2026]}
BibLaTeX
@online{reference.wolfram_2026_stringcount, organization={Wolfram Research}, title={StringCount}, year={2020}, url={https://reference.wolfram.com/language/ref/StringCount.html}, note=[Accessed: 01-November-2026]}