0

PHP でファイルを読み込んで、一致する配列を取得しようとしています。私は自分が望むものに対して機能するパターンを持っていますが、ファイル内の特定のポイントの後にマッチングを開始した場合にのみ - その後は問題ありません。

次のような .less ファイルを読み込んでいます。

/* ... */

.icon-flip-vertical:before {
  -webkit-transform: scale(1, -1);
  -moz-transform: scale(1, -1);
  -ms-transform: scale(1, -1);
  -o-transform: scale(1, -1);
  transform: scale(1, -1);
}
/* ensure rotation occurs inside anchor tags */
a .icon-rotate-90:before,
a .icon-rotate-180:before,
a .icon-rotate-270:before,
a .icon-flip-horizontal:before,
a .icon-flip-vertical:before {
  display: inline-block;
}

/* start capturing with pattern here */

.icon-glass:before{content:"\f000";}
.icon-music:before{content:"\f001";}
.icon-search:before{content:"\f002";}
.icon-envelope-alt:before{content:"\f003";}

/* ... more like this after */

アイコンクラスの「肉」を捉えようとしています。つまり.icon-XXXX:before 、パターンを\.icon-([^:]+)うまく使用していますが、前述のように、ファイル内の指定されたポイントでマッチングを開始したいと考えています。

重要な注意事項の 1 つは、何らかの理由で、すべてのアイコン クラスが独自の行にあるわけではないということです。

\f000トリックを行う文字列を含む行からマッチングを開始するように設定できればと考えています。それを行う方法、私はまだ見つけていません。

お時間をいただきありがとうございます。

4

2 に答える 2

0

正規表現マッチングを適用する前に、作業したい文字列を抽出します。

$subString = substr($string,strpos($string,"start capturing with pattern here"));

次に、その部分文字列に正規表現を適用します。

start capturing with pattern hereこのアプローチを使用するには、文字列を 2 つの部分 (役に立たない部分と有用な部分) に分割するセパレーター (私の例では ) を選択する必要があることに注意してください。

于 2013-07-15T00:08:20.243 に答える