Ile 'merhaba nasılsın' gitmek preg_split kullanma [merhaba, nasılsın]

2 Cevap php

I want to split a string into two parts, the string is almost free text, for example:

$string = 'hi how are you';

ve ben bölünmüş böyle bakmak istiyorum:

array(
    [0] => hi
    [1] => how are you
)

Ben bu regex kullanarak çalıştı: /(\S*)\s*(\.*)/ ancak döndürülen dizi doğru boyutta olsa bile, değerler boş geliyor.

Ne bu işleri yapmak için gerekli model olmalı?

2 Cevap

Gereksinimleri nelerdir? Sizin örnek güzel keyfi görünüyor. İstediğiniz tüm ilk uzay bölünmüş ve tek başına dize kalanı bırakın ise, bu kullanarak, bunu explode olur:

$pieces = explode(' ', 'hi how are you', 2);

Temelde "alanlarda bölünmüş ve 2 elemanları için çıkan dizi sınırlamak" diyor

Sen kaçan olmamalıdır "." son grupta. Herhangi bir karakter değil, bir edebi dönem eşleştirmeye çalışıyoruz.

Düzeltilmiş: /(\S*)\s*(.*)/