![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 217 Pomógł: 1 Dołączył: 26.05.2011 Skąd: Moon Ostrzeżenie: (10%) ![]() ![]() |
Witajcie Świątecznie,
Potrzebuję podpowiedzi, wyszukuję w stringu określonego ciągu znaków i tu nie ma problemu, potrzebuję jednak do tego określonego dodać kolejnych kilka ale już bez sprawdzania co to jest. Powiedzmy że mam ciąg: Z-0.00000000, wyszukuję znaki "Z-" i do tego kolejnych 10 znajdujących się z prawej strony. Jak je połączyć albo jak z tych 2 elementów zrobić jeden. Dlaczego ? Dlatego, że liczby znajdujące się za Z- zmieniają się a nie są potrzebne więc trzeba je wyciąć. Jak ? Tak wyglądają kody G00 Z0.10000000 G00 X4.95970000 Y2.74900000 G01 Z-0.25000000 G01 X4.95970000 Y3.99320000 G00 Z0.10000000 G00 X4.95970000 Y2.74900000 G01 Z-0.50000000 G01 X4.95970000 Y2.74900000 Z-0.50000000 G01 X4.95970000 Y3.99320000 G00 Z0.10000000 G00 X4.95970000 Y2.74900000 G01 Z-0.75000000 tak wyglądają kody i chcę wyciąć/podmienić automatycznie np: G00 Z0.10000000 => M3 G01 Z-0.25000000 => M5 itd Ponieważ zmieniają się wartości muszą być traktowane jedynie jako długość stringu a nie co w nim jest Gdyby stringi były stałe problemu by nie było. Ze świątecznym pozdrowieniem phpamator Ten post edytował phpamator 25.12.2014, 19:10:16 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 318 Pomógł: 76 Dołączył: 27.12.2011 Skąd: Dąbrowa Górnicza Ostrzeżenie: (0%) ![]() ![]() |
preg_replace powinno pomóc
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 217 Pomógł: 1 Dołączył: 26.05.2011 Skąd: Moon Ostrzeżenie: (10%) ![]() ![]() |
Własnie z tym walczę ale zastosowanie str_replace nie bardzo robi to o co proszę.
Ponieważ ma brać pod uwagę blok "G01 Z-0.75000000" ale .... tylko pierwszych 5 znaków jest stałe, kolejnych 10 się zmienia wiec przy wyszukiwaniu musi wybierac te 5 + następnych 10 znaków |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 318 Pomógł: 76 Dołączył: 27.12.2011 Skąd: Dąbrowa Górnicza Ostrzeżenie: (0%) ![]() ![]() |
Naucz się czytać i sprawdź co udostępniam! preg_replace a nie str_replace. Zasadnicza różnica!
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 217 Pomógł: 1 Dołączył: 26.05.2011 Skąd: Moon Ostrzeżenie: (10%) ![]() ![]() |
Umiem czytać,
Zobacz cie, o ile teoretycznie każda z tych linii wyszukuje i zamienia odpowiednią sekwencję na "Mx" to .... i tak nie chce działać jak ja tego potrzebuję bo to: G00 Z0.10000000 G01 Z-0.25000000 G00 Z0.10000000 G01 Z-0.50000000 Z-0.50000000 G00 Z0.10000000 G01 Z-0.75000000 Z-0.75000000 Z-0.25000000 G00 Z0.10000000 G01 Z-0.50000000 Z-0.50000000 powinno wyglądać tak: M3 M5 M3 M5 M5 M3 M5 M5 M5 M3 M5 M5 a wygląda tak (IMG:style_emoticons/default/sad.gif) G00 Z0.10000000 G01 M5 G00 Z0.10000000 G01 M5 M5 G00 Z0.10000000 G01 M5 M5 M5 G00 Z0.10000000 G01 M5 M5 Ten post edytował phpamator 25.12.2014, 21:33:33 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 217 Pomógł: 21 Dołączył: 10.06.2011 Skąd: Głogów Ostrzeżenie: (0%) ![]() ![]() |
Gdyż, wynik jest ostatnim replac'em.
A wyszukiwarka nie wyświetla znaku entera, natomiast w znaczniku <pre> zobaczysz je. Ew. możesz zamienić je na <br> za pomocą funkcji nl2br.
Ten post edytował jackraymund 25.12.2014, 22:47:02 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 217 Pomógł: 1 Dołączył: 26.05.2011 Skąd: Moon Ostrzeżenie: (10%) ![]() ![]() |
Jak więc go zmusić, żeby zrobił po kolei zmiany uzywając kazdego z pokazanych wariantów ?
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 12.10.2025 - 18:33 |