Странное чувство. Зашел в trending гитхаба
И первой же строкой идет вот такая вот штуковина: JavaScript Regular Expression Parser & Visualizer. http://jex.im/regulex/ |
danik.js,
В чем же странность твоего чувства? Какое отношение парсер, а, тем-более, "visualizer" имеют к генерации строк по регекспу? |
Да? А мне показалось что все очевидно. По крайней мере я тут же прикинул план решения.
Видимо у тебя с этим трудности. |
danik.js,
вот тебе регулярное выражение f.o вот тебе его парсер /f\.o/ сгенерируй мне выходные слова |
Цитата:
И как ты себе представляешь генерацию всех вариантов для регулярки x* ? |
<script src="http://libs.useso.com/js/require.js/2.1.11/require.min.js"></script>
<script>
require.config({
baseUrl: "http://jex.im/regulex",
});
require(['dest/parse'], function(parse) {
var re = 'krutoy.лох';
var root = parse(re);
alert(generateMatchingString(root.tree));
});
var generateNode = {
exact: function(node) {
return node.chars;
},
dot: function(node) {
return '*';
},
choice: function(node) {
return generateMatchingString(node.branches[0]);
}
};
function generateMatchingString(tree) {
var chunks = tree.map(function(node){
return generateNode[node.type](node);
});
return chunks.join('');
}
</script>
Узлы backref, repeat, empty, charset и тд предлагаю реализовать топик-стартеру. Либо раздел Работа. |
Цитата:
alert("krutoy.loh".replace(/\./, "*"))
? Или ты сам идиот? |
Цитата:
|
Цитата:
|
Короче, ди нах троль. ТС поставил задачу, я показал как ее можно решить. Можешь дальше ссаться кипятком.
|
| Часовой пояс GMT +3, время: 20:28. |