parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Несколько предложений

G_Z 01.11.2013 12:19 / 01.11.2013 12:42

1. Опцию для string.split[], включающую принудительный trim пробельных символов:
$s[1, 2, 3]
^s.split[,;t]
piece
1
2
3
Позволит упростить разбор всяческих перечислений, без дополнительных плясок с trim, промежуточными переменными и перебором порезанных частей.

2. Возможность указывать код, для формирования значений хеша при $.type[string]:
$t[^table::create{a	b
number 1	value 2
number 3	value 4
number 5	value 6}]

^t.hash{^t.a.match[number ;]{};^t.b.match[value ;]{}}[$.type[string]]
$.1[2]
$.3[4]
$.5[6]
Позволит упростить работу с хешами, отказавшись от переборов и временных копий.

3. URL-encode и последующий decode передаваемого по протоколу parser:// параметра:
<xsl:value-of select="document(concat('parser://m/', 'a b c'))/result"/>

@m[value]
$result[<?xml version="1.0" encoding="$response:charset"?>
<result>^value.match[ ;g]{-}</result>]
Сейчас такое просто не работает, нужно заменять пробелы.

В XSL крайне затруднительно делать полноценный encode.
Позволит шире использовать возможности parser://-протокола, без лишних ухищрений с заменами символов.