Nasıl php, artım bulmak ve değiştirebilirsiniz?

0 Cevap php

Ben formda dizeleri \d+_\d+ var ve ben ikinci sayısına 1 eklemek istiyorum. Benim açıklama çok çok açık olduğundan, sana bir kaç örnek vereyim:

  • 1234567_2 1234567_3 olması gerektiğini
  • 1234_10 1234_11 olması gerektiğini

İşte benim ilk denemem:

$new = preg_replace("/(\d+)_(\d+)/", "$1_".((int)$2)+1, $old);

Bu bir sözdizimi hatası ile sonuçlanır:

Parse error: syntax error, unexpected T_LNUMBER, expecting T_VARIABLE or '$' in [...] on line 201

İşte benim ikinci girişimi

$new = preg_replace("/(\d+)_(\d+)/", "$1_".("$2"+1), $old);

Bu istenen etkiyi değil, hangi 1234567_1 = new $ içine = 1234567_2 $ eski dönüşümleri

Benim üçüncü girişimi

$new = preg_replace("/(\d+)_(\d+)/", "$1_".((int)"$2"+1), $old);

Bu durum, aynı sonucu yeilds.

Bu girişimleri yaparak, ben anlamadım fark ne yeni $ 1, $ 2, $ 3, .. değişkenler gerçekten çalıştı, ve bu yüzden gerçekten bu değişkenler artık çıkarken var gibi görünüyor çünkü denemek için başka ne bilmiyorum preg_replace fonksiyonu ...

Herhangi bir fikir?

0 Cevap