Я наткнулся на этот форум, пытаясь идентифицировать регулярное выражение для следующего английского оператора:
Учитывая входную строку, сопоставьте все , если эта строка ввода точно «бар»; например, я хочу сопоставить «барьер» и «disbar», а также «foo».
blockquote>Вот регулярное выражение, которое я придумал с помощью
^(bar.+|(?!bar).*)$
My English перевод регулярного выражения «соответствует строке, если она начинается с« bar »и имеет хотя бы один другой символ, или если строка не начинается с« bar ».
Вы можете выполнить запрос селектора по краям, у которых есть свойство source и target
Обратите внимание, что в этом фрагменте нет console.log () по причине:
Коллекция Cytoscape возвращает довольно большой массив информации, поэтому консоль stackoverflow не способна показать это, она пытается показать ее в виде отформатированной строки или чего-то еще и затем останавливается на огромном количестве строк, которые она должна обработать. ...
blockquote>
var cy = window.cy = cytoscape({ container: document.getElementById('cy'), boxSelectionEnabled: false, autounselectify: true, style: [{ selector: 'node', css: { 'content': 'data(id)', 'text-valign': 'center', 'text-halign': 'center', 'height': '60px', 'width': '60px', 'border-color': 'black', 'border-opacity': '1', 'border-width': '10px' } }, { selector: 'edge', css: { 'target-arrow-shape': 'triangle' } } ], elements: { nodes: [{ data: { id: 'a' } }, { data: { id: 'b' } }, { data: { id: 'c' } } ], edges: [{ data: { source: 'a', target: 'b' } }, { data: { source: 'a', target: 'c' } } ] }, layout: { name: 'concentric' } }); // First option: getting the edges with the sourceId "a" and then all targtes of these edges var targets = cy.edges('[source = "a"]').targets(); // Second option: getting the node with the id "#a" and then this nodes outgoers (all outgoing edges and their target node). After that, you can either get all edges with .edges() or all nodes with .nodes() var alternative = cy.$('#a').outgoers().nodes();
body { font: 14px helvetica neue, helvetica, arial, sans-serif; } #cy { height: 100%; width: 75%; position: absolute; left: 0; top: 0; float: left; }
<html> <head> <meta charset=utf-8 /> <meta name="viewport" content="user-scalable=no, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, minimal-ui"> <script src="https://cdnjs.cloudflare.com/ajax/libs/cytoscape/3.2.17/cytoscape.min.js"></script> <script src="https://unpkg.com/jquery@3.3.1/dist/jquery.js"></script> </head> <body> <div id="cy"></div> </body> </html>