El método matchRows() de p5.Table en p5.js se usa para encontrar todas las filas que coinciden con la expresión regular dada. Devuelve una referencia a las filas coincidentes en forma de array. La columna que utiliza el método para buscar la fila se puede especificar como un parámetro.
Sintaxis:
matchRows( regexp, [column] )
Parámetros: este método acepta dos parámetros, como se mencionó anteriormente y se describe a continuación:
- regexp: es un objeto String o RegExp que especifica la expresión regular que debe coincidir.
- columna: es una string o número que denota el nombre de la columna o el ID de la columna. Es un parámetro opcional.
Valor devuelto: este método devuelve una array de objetos p5.TableRow que coinciden con la expresión regular dada.
El siguiente ejemplo ilustra el método Match Rows() en p5.js:
Ejemplo:
function setup() { createCanvas(500, 300); textSize(16); matchQueryInput = createInput(); matchQueryInput.position(30, 40); getColBtn = createButton("Get the matching row"); getColBtn.position(30, 70); getColBtn.mouseClicked(getMatchedResults); // Create the table table = new p5.Table(); // Add two columns table.addColumn("name"); table.addColumn("id"); // Add some rows to the table let newRow = table.addRow(); newRow.setString("name", "mary"); newRow.setString("id", 21); newRow = table.addRow(); newRow.setString("name", "marco6"); newRow.setString("id", 27); newRow = table.addRow(); newRow.setString("name", "tunisia 4"); newRow.setString("id", 32); newRow = table.addRow(); newRow.setString("name", "user 23"); newRow.setString("id", 32); newRow = table.addRow(); newRow.setString("name", "admin"); newRow.setString("id", 45); newRow = table.addRow(); newRow.setString("name", "mikasa"); newRow.setString("id", 23); showTable(); } function getMatchedResults() { clear(); let matchQuery = matchQueryInput.value(); if (matchQuery != "") { // Match the query in the column of 'name' matchResults = table.matchRows(new RegExp(matchQuery), 'name'); if (matchResults.length > 0) { text("The rows that matches the " + "query is", 20, 120); for (let i = 0; i < matchResults.length; i++) { // Display the matched value text(matchResults[i].arr[0], 20, 140 + i * 20); text(matchResults[i].arr[1], 120, 140 + i * 20); } } else text("No Results Found", 20, 120); } else { text("The query string is empty", 20, 120); } text("Enter a string to match it in " + "the 'name' column table", 20, 20); } function showTable() { clear(); // Display the total rows present in the table text("There are " + table.getRowCount() + " rows in the table", 20, 120); for (let r = 0; r < table.getRowCount(); r++) for (let c = 0; c < table.getColumnCount(); c++) text(table.getString(r, c), 20 + c * 100, 140 + r * 20); text("Enter a string to match it in " + "the 'name' column table", 20, 20); }
Producción:
Configuración del entorno: https://www.geeksforgeeks.org/p5-js-soundfile-object-installation-and-methods/
Referencia: https://p5js.org/reference/#/p5.Table/matchRows
Publicación traducida automáticamente
Artículo escrito por sayantanm19 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA