Tôi cần chia một chuỗi thành hai phần. Chuỗi chứa các từ được phân tách bởi một không gian và có thể chứa bất kỳ số lượng từ nào, ví dụ:
$string="one two three four five";
$last_space = strrpos[$string, ' '];
$last_word = substr[$string, $last_space];
$first_chunk = substr[$string, 0, $last_space];
3Phần đầu tiên cần chứa tất cả các từ ngoại trừ từ cuối cùng.
Phần thứ hai chỉ cần chứa từ cuối cùng.
Chỉnh sửa: Hai phần cần được trả về dưới dạng chuỗi, không phải mảng, ví dụ:
$string="one two three four five";
$last_space = strrpos[$string, ' '];
$last_word = substr[$string, $last_space];
$first_chunk = substr[$string, 0, $last_space];
4$string="one two three four five";
$last_space = strrpos[$string, ' '];
$last_word = substr[$string, $last_space];
$first_chunk = substr[$string, 0, $last_space];
5
Mickmackusa
39.1k11 Huy hiệu vàng76 Huy hiệu bạc114 Huy hiệu đồng11 gold badges76 silver badges114 bronze badges
Đã hỏi ngày 27 tháng 3 năm 2012 lúc 14:41Mar 27, 2012 at 14:41
2
Một vài cách bạn có thể đi về nó.
Hoạt động mảng:
$string ="one two three four five";
$words = explode[' ', $string];
$last_word = array_pop[$words];
$first_chunk = implode[' ', $words];
Chuỗi hoạt động:
$string="one two three four five";
$last_space = strrpos[$string, ' '];
$last_word = substr[$string, $last_space];
$first_chunk = substr[$string, 0, $last_space];
Farahmand
2.4911 Huy hiệu vàng21 Huy hiệu bạc27 Huy hiệu đồng1 gold badge21 silver badges27 bronze badges
Đã trả lời ngày 27 tháng 3 năm 2012 lúc 14:47Mar 27, 2012 at 14:47
Marc Bmarc bMarc B
351K42 Huy hiệu vàng403 Huy hiệu bạc487 Huy hiệu đồng42 gold badges403 silver badges487 bronze badges
1
Những gì bạn cần là phân chia chuỗi đầu vào trên không gian cuối cùng. Bây giờ một không gian cuối cùng là một không gian không được theo sau bởi bất kỳ không gian nào nữa. Vì vậy, bạn có thể sử dụng khẳng định lookahead tiêu cực để tìm không gian cuối cùng:
$string="one two three four five";
$pieces = preg_split['/ [?!.* ]/',$string];
Đã trả lời ngày 27 tháng 3 năm 2012 lúc 14:45Mar 27, 2012 at 14:45
CodaddictCodaddictcodaddict
435K80 Huy hiệu vàng487 Huy hiệu bạc524 Huy hiệu đồng80 gold badges487 silver badges524 bronze badges
0
Hãy xem chức năng bùng nổ trong PHP
Trả về một mảng chuỗi, mỗi chuỗi là một chuỗi chuỗi được hình thành bằng cách chia nó trên các ranh giới được hình thành bởi dấu phân cách chuỗi
Đã trả lời ngày 27 tháng 3 năm 2012 lúc 14:46Mar 27, 2012 at 14:46
BonobonoBono
4.6896 Huy hiệu vàng46 Huy hiệu bạc76 Huy hiệu đồng6 gold badges46 silver badges76 bronze badges
$string="one two three four five";
list[$second,$first] = explode[' ',strrev[$string],2];
$first = strrev[$first];
$second = strrev[$second];
var_dump[$first];
var_dump[$second];
Đã trả lời ngày 27 tháng 3 năm 2012 lúc 14:47Mar 27, 2012 at 14:47
Marc Bmarc bMark Baker
351K42 Huy hiệu vàng403 Huy hiệu bạc487 Huy hiệu đồng31 gold badges338 silver badges380 bronze badges
Những gì bạn cần là phân chia chuỗi đầu vào trên không gian cuối cùng. Bây giờ một không gian cuối cùng là một không gian không được theo sau bởi bất kỳ không gian nào nữa. Vì vậy, bạn có thể sử dụng khẳng định lookahead tiêu cực để tìm không gian cuối cùng:
Đã trả lời ngày 27 tháng 3 năm 2012 lúc 14:45
CodaddictCodaddictMar 27, 2012 at 14:48
435K80 Huy hiệu vàng487 Huy hiệu bạc524 Huy hiệu đồngAlex Turpin
Hãy xem chức năng bùng nổ trong PHP23 gold badges112 silver badges145 bronze badges
$string = "one two three four five";
$array = explode[" ", $string]; // Split string into an array
$lastWord = array_pop[$array]; // Get the last word
// $array now contains the first four words
Đã trả lời ngày 27 tháng 3 năm 2012 lúc 14:46Mar 27, 2012 at 14:46
gen_Ericgen_Ericgen_Eric
Bonobono40 gold badges295 silver badges334 bronze badges
4.6896 Huy hiệu vàng46 Huy hiệu bạc76 Huy hiệu đồng
$arr = explode[' ', $string];
$second = array_pop[$arr];
$result[] = implode[' ', $arr];
$result[] = $second;
CodaddictCodaddictMar 27, 2012 at 14:48
dan-leedan-leedan-lee
435K80 Huy hiệu vàng487 Huy hiệu bạc524 Huy hiệu đồng5 gold badges50 silver badges77 bronze badges
Hãy xem chức năng bùng nổ trong PHP
$string=explode[" ", $string];
$new_string_1=$string[0]." ".$string[1]." ".$string[2]." ".$string[3];
$new_string_2=$string[4];
Trả về một mảng chuỗi, mỗi chuỗi là một chuỗi chuỗi được hình thành bằng cách chia nó trên các ranh giới được hình thành bởi dấu phân cách chuỗiMar 27, 2012 at 14:49
user783322user783322user783322
Đã trả lời ngày 27 tháng 3 năm 2012 lúc 14:461 gold badge8 silver badges19 bronze badges
$string="one two three four five";
$matches = array[];
preg_match['/[.*?][\w+]$/', $string, $matches];
print_r[$matches];
Output:
$string="one two three four five";
$last_space = strrpos[$string, ' '];
$last_word = substr[$string, $last_space];
$first_chunk = substr[$string, 0, $last_space];
8Bonobono
4.6896 Huy hiệu vàng46 Huy hiệu bạc76 Huy hiệu đồngMar 27, 2012 at 14:51
Mark Bakermark Bakernathanjosiah
206K31 Huy hiệu vàng338 Huy hiệu bạc380 Huy hiệu đồng4 gold badges34 silver badges47 bronze badges
Sử dụng
$string="one two three four five";
$last_space = strrpos[$string, ' '];
$last_word = substr[$string, $last_space];
$first_chunk = substr[$string, 0, $last_space];
6 để có được vị trí của ký tự không gian cuối cùng, sau đó $string="one two three four five";
$last_space = strrpos[$string, ' '];
$last_word = substr[$string, $last_space];
$first_chunk = substr[$string, 0, $last_space];
7 để chia chuỗi với vị trí đó.@s = split[/\s+/, $string] ;
$s1 = $string ;
$s1 =~ s/$s[-1]$//e ;
$s2 = $s[-1] ;
print "The first part: $s1 \n";
print "The second part: $s2 \n";
Ví dụ trực tiếpMar 27, 2012 at 14:56
Đã trả lời ngày 27 tháng 3 năm 2012 lúc 14:48
Alex Turpinalex Turpin
45,9K23 Huy hiệu vàng112 Huy hiệu bạc145 Huy hiệu đồng
$string="one two three four five";
$last_space = strrpos[$string, ' '];
$last_word = substr[$string, $last_space];
$first_chunk = substr[$string, 0, $last_space];
0Output:
$string="one two three four five";
$last_space = strrpos[$string, ' '];
$last_word = substr[$string, $last_space];
$first_chunk = substr[$string, 0, $last_space];
1Phim thương hiệu vàng 218K40
$string="one two three four five";
$last_space = strrpos[$string, ' '];
$last_word = substr[$string, $last_space];
$first_chunk = substr[$string, 0, $last_space];
2Điều này nên làm điều đó:Jul 30, 2021 at 14:18
14.2K5 Huy hiệu vàng 50 Huy hiệu bạc77 Huy hiệu đồngmickmackusa
39.1k11 Huy hiệu vàng76 Huy hiệu bạc114 Huy hiệu đồng11 gold badges76 silver badges114 bronze badges