[PHP-users 35314] Re: ある一定範囲で最初に出現した文字列にのみ*マーク付加
Eiji Miwa
miwa @ offside.ne.jp
2010年 8月 4日 (水) 18:01:11 JST
ミワです。
On 2010/08/04, at 16:06, Manabu Masuzawa wrote:
>
> さて本題に入りますが、「辞典」内の*マーク付加についてですが、
> 項目は1437項目あります。その項目の文章ごとに1437項目を検索し、
> その文字列の頭に「*」を付加したいのです。
> ただし複数ある場合は、最初に出現した文字列のみ付加するように
> したいと考えております。
On 2010/08/04, at 17:19, Manabu Masuzawa wrote:
>
> 実は私自身、Perlにつきましても初心者なのですが、
> 精通している方にお尋ねしたところ、Perlでは無理だとのお話しでした。
こういうことだったら Perl でも出来るし、むしろ得意だよね。
-----
$text = '最初に出現文字列最初に出現文字列最初に出現文字列最初に出現文字列';
$keyword = '出現';
$pattern = sprintf('/^(.*?)(%s)/s', $keyword);
$replacement = '$1*$2';
echo preg_replace($pattern, $replacement, $text);
-----
--
miwa at offside.ne.jp
PHP-users メーリングリストの案内