2

次のような文字列があります。

word1, word2, word3, word4, word5

結果は次のようになります。

word1, word2, word3 . . .

つまり、3 番目のコンマ以降 (3 番目のコンマを含む) をすべて置き換えたいと考えています。

. . .

Oracle REGEXP_REPLACE 関数を使用します。

事前に助けてくれてありがとう!

4

3 に答える 3

1

^(([^,]*,){2,2}[^,]*),.*

見つかったものに置き換えます

\1 . . .

関数の経験はありませんが、おそらく次のようになります。

REGEXP_REPLACE(str, '^(([^,]*,){2,2}[^,]*),.*', '\1 . . .')

于 2012-11-14T10:31:59.860 に答える
0

正規表現の代わりにimplodearray_sliceを使用できます。

<?php
$words_to_display = 3;
$str = "word1, word2, word3, word4, word5";

$array = explode(', ', $str);
print_r($array);

$array = array_slice($array, 0, $words_to_display);

$str = implode(', ', $array).' . . .';
echo $str;
?>

デモ: http://ideone.com/TTmPhr

于 2012-11-14T10:16:13.850 に答える
0

正規表現や「デザイン」は必要ありません。

  1. ',' で分割

  2. 繰り返して交換します。

  3. 再会して喜ぶ。

于 2012-11-14T10:07:44.683 に答える