19format_escape.mql 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. -- ============================================================
  2. -- {%%...,...} 转义、{%s,varname} 格式化测试
  3. -- ============================================================
  4. -- 1. {%s,varname} 字符串格式化
  5. /**
  6. beforerun(set(my_str, 'formatted_string_value'))
  7. **/
  8. ;
  9. insert into /test/aaa/test_ext (e_name, e_text) values ('var_str_fmt', {%s,my_str})
  10. ;
  11. select e_name, e_text from /test/aaa/test_ext where e_name='var_str_fmt'
  12. /**
  13. output()
  14. match("e_text","formatted_string_value")
  15. **/
  16. ;
  17. -- 2. {%%...,...} 转义避免被替换
  18. insert into /test/aaa/test_ext (e_name, e_text) values ('var_escape', '{%%now,now}')
  19. ;
  20. select e_name, e_text from /test/aaa/test_ext where e_name='var_escape'
  21. /**
  22. output()
  23. **/
  24. ;
  25. -- 3. 多个格式化组合
  26. /**
  27. beforerun(set(fmt_num, 42), set(fmt_str, 'answer'))
  28. **/
  29. ;
  30. insert into /test/aaa/test_ext (e_name, e_text) values (concat('var_combo_', {%d,fmt_num}), concat({%s,fmt_str}, ' = ', {%d,fmt_num}))
  31. ;
  32. select e_name, e_text from /test/aaa/test_ext where e_name=^'var_combo'
  33. /**
  34. output()
  35. **/
  36. ;