Hapuskan "dua atau lebih" ruang dalam ungkapan biasa
P粉959676410
P粉959676410 2023-09-16 14:33:55
0
1
997

Saya memerlukan regex untuk membenarkan:

  1. Tiada ruang di awal atau penghujung baris
  2. Hanya ada satu ruang antara perkataan

Saya sudah cukup dengan sesuatu seperti "^[АЯ-Ёа-яё0-9' ']+$" - tetapi bukan itu yang saya perlukan.

P粉959676410
P粉959676410

membalas semua(1)
P粉133321839

Ini sepatutnya berfungsi:

^(?! )(?!.*  )(?!.* $)[^\s].*$

Berikut ialah pecahan ungkapan:

  • ^: Tegaskan permulaan baris.
  • (?!): Abaikan pandangan ke hadapan dan larang ruang pada permulaan baris.
  • (?!.*): Pandangan negatif ke hadapan, dua atau lebih ruang berturut-turut dalam rentetan tidak dibenarkan.
  • (?!.* $): Meniadakan pandangan ke hadapan dan tidak membenarkan ruang di hujung baris.
  • [^s]: Padan dengan mana-mana aksara bukan ruang putih.
  • .*: Padankan mana-mana aksara (kecuali baris baharu) 0 atau lebih kali.
  • $: Tegaskan penghujung baris.

Saya menjalankan ujian kecil di regex101.com.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan