これはほぼ確実ですが、これに特有のものは何も見つかりません。私がbashを学ぶための旅を続けていくうちに、どうして物事が起こるのかについて私が困惑している部分を見つけ出します。bashだけで文字列内の部分文字列を見つけるためのマッチの使用
文字列内のサブ文字列を検索したり置換したりするだけで、スクリプトを作成するときに最初に行うことの1つが最も可能性が高いです。しかし、ほとんどの問題を複数の方法で解決できるように、単一の言語やツールセットに固執しようとすると、bashで行うのは難しいです。できるだけ低レベルでbashを使い続けるために最善を尽くしています。私は誰かが私に説明するのが必要なつまずきに遭遇しました。
サブストリングを使用すると、bashでの検索で一致する正規表現が異なる場合は、その理由がわかりません。単語の両方の検索が、
#!/bin/bash
Stext="Hallo World"
echo `expr "$Stext" : '^\(.[a-z]*\)'` # Hallo
echo `expr "$Stext" : '.*World'` # 11
、私は考えて、両方のは、彼らが見つけるものを返しません。どうして?
感謝。 Bash-Scriptingのガイドは消化するのが簡単ではありません。 –
この質問は[tag:bash]に関するもので、* forkへの/ usr/binの代わりに* builtin * regexを[@kev suggest](http://stackoverflow.com/a/9602260/1765658)/expr' *! –