X



正規表現
レス数が1000を超えています。これ以上書き込みはできません。
0959名無しさん@お腹いっぱい。
垢版 |
2018/06/04(月) 08:22:10.94
>>958
ありがとうござい
参考になります
0960名無しさん@お腹いっぱい。
垢版 |
2018/12/21(金) 21:02:43.67
bashで半角スペースの繰り返しを半角スペース1つに変換する正規表現で困っています。
ちなみに、sedなら何も問題なくできます。でもsedはプログラムを起動する分遅くなります。
bashの場合、次のように書くと、不完全ながらも空白スペースを縮めることはできました
"${str// [ \{1\,\}]/ }"

こいつを何回か繰り返すと連続スペースを1スペースにできるのですが、あまりに不細工すぎて、
何かまともな書き方はないでしょうか?
下のRep2Oneはbashで動作する、
str中、2回以上chrが連賊する箇所を1回に縮める関数です。

function Rep2One(){
local str=$1
local chr=$2
while :
do
str="${str//$chr$chr/$chr}"
# echo "str = $str"
if [[ ! $str =~ $chr$chr ]]; then
break
fi
done
echo "$str"
}
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 5942日 11時間 17分 40秒
10021002
垢版 |
Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/

▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。

ニューススポーツなんでも実況