Pythonの文字列のインデックスペア
テキスト文字列と単語(文字列のリスト)があるとすると、部分文字列text [i] ... textとなるように、すべてのインデックスペア[i、j]を検索する必要があります。 [j]は単語のリストにあります。したがって、文字列が「ababa」のようで、単語配列が[「aba」、「ab」]のようである場合、出力は[[0,1]、[0,2]、[2,3]、[2]になります。 、4]]。一致が重複する可能性があることに気付くことがあります。「aba」は[0,2]と[2,4]で一致しています。
これを解決するには、次の手順に従います-
- res:=空のリスト
- 0から文字列の長さの範囲のiの場合
- i+1から文字列の長さ+1までの範囲のjの場合
- 単語のインデックスiからjまでの文字列のサブストリングの場合-
- 結果の配列に(i、j – 1)を追加します
- 単語のインデックスiからjまでの文字列のサブストリングの場合-
- i+1から文字列の長さ+1までの範囲のjの場合
- 結果を返す
理解を深めるために、次の実装を見てみましょう-
class Solution(object): def indexPairs(self, text, words): result = [] for i in range(len(text)): for j in range(i+1,len(text)+1): if text[i:j] in words: result.append([i,j-1]) return result ob1 = Solution() print(ob1.indexPairs("ababa",["aba","ab"]))
入力
"ababa" ["aba","ab"]
出力
[[0,1],[0,2],[2,3],[2,4]]
-
文字列に偶数の長さの単語を出力するPythonプログラム
この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。 問題の説明 文字列を指定すると、文字列内のすべての単語を均等な長さで表示する必要があります。 アプローチ split()関数を使用して入力文字列を分割します。 forを使用して文字列の単語を繰り返し処理します ループ& len()を使用して単語の長さを計算します 機能。 長さが均等であると評価されると、単語が画面に表示されます。 それ以外の場合、画面に単語は表示されません。 次に、以下の実装を見てみましょう- 例 def printWords(s): # split
-
文字列をPythonで単語のリストに変換する方法は?
単語のリスト内の文字列を変換するには、空白で文字列を分割する必要があります。文字列クラスからsplit()を使用できます。このメソッドのデフォルトの区切り文字は空白です。つまり、文字列で呼び出されると、その文字列が空白文字で分割されます。 例 >>> "Please split this string".split() ['Please', 'split', 'this', 'string'] 正規表現を使用して、この問題を解決することもできます。正規表現\s +を区切り文字として使用して、