งาน
เขียนโปรแกรมหรือฟังก์ชั่นที่ได้รับสามสายA, B, Cสร้างสายออกที่แต่ละอินสแตนซ์ของBในAได้ถูกแทนที่ด้วยCซ้ำ การแทนที่แบบเรียกซ้ำหมายถึงการทำซ้ำการแทนที่โดยในแต่ละขั้นตอนอินสแตนซ์ที่ไม่ซ้ำซ้อนทั้งหมดของBในA(เลือกอย่างตะกละตะกลามจากซ้ายไปขวา) จะถูกแทนที่ด้วยCจนกว่าBจะไม่มีอยู่ในAนั้นอีก
Input / Output
- คุณสามารถใช้ใด ๆ ของ วิธีการเริ่มต้นสำหรับ I / O
- สตริงจะมีอักขระ ASCII ที่พิมพ์ได้เท่านั้น (และอาจมี ใด ๆ ก็ได้ )
Bจะไม่เป็นสตริงว่างเปล่าในขณะที่AและCอาจเป็น- สตริงจะถือว่าเป็นธรรมดาคุณไม่สามารถยกตัวอย่างเช่นถือว่า
Bเป็นรูปแบบ Regex - ชุดค่าผสมบางอย่างจะไม่สิ้นสุด โปรแกรมของคุณสามารถทำอะไรก็ได้ในกรณีเหล่านั้น
กรณีทดสอบ
สิ่งเหล่านี้อยู่ในรูปแบบ: A/B/C\nOutput
Hello, world!/world!/PPCG
Hello, PPCG
Uppercase is up/up/down
Uppercase is down
ababababa/aba/ccc
cccbcccba
delete/e/{empty string}
dlt
{empty string}/no/effect
{empty string}
llllrrrr/lr/rl
rrrrllll
+-+-+-+/+-+/+
+
ababababa/aba/bada
badabbadbada
abaaba/aba/ab
abb
((())())())/()/{empty string}
)
ตัวอย่างที่ไม่สิ้นสุด:
grow/ow/oow
loop/lo/lo
downpercase is down
((())())())/()/