Esta plantilla crea un enlace que se puede utilizar para almacenar una consulta del cuadro de búsqueda de Wikipedia. Un enlace de búsqueda es útil para la búsqueda colaborativa en páginas de discusión y en la mayoría de las demás páginas, pero no debe usarse en artículos. Si se usa en artículos , genera la advertencia anterior.
{{Search link|first|second|third}}
El nombre de la plantilla es Enlace de búsqueda o sl para abreviar.
El segundo y tercer parámetro son opcionales y tienen valores predeterminados, por lo que la forma abreviada es .{{sl|query}}
Tanto un enlace de búsqueda como un cuadro de búsqueda van al mismo motor de búsqueda. La misma consulta produce el mismo resultado.
La búsqueda básica cubre artículos. Encuentra palabras y frases compuestas de letras y números muy rápidamente, pero una búsqueda básica también puede consultar todos los artículos que contienen una cadena que incluye puntuación, matemáticas y otros símbolos como se ve en el contenido de la página o como se ve en el wikitexto de la página.
Esta plantilla se diferencia superficialmente del cuadro de búsqueda cuando se busca un signo igual. En el cuadro de búsqueda solo dices =, pero aquí debes usar la cadena de cinco letras {{=}}. [2]
En la búsqueda 5, observe la necesidad de utilizar comillas dobles alrededor del patrón de búsqueda: . Estos protegen los caracteres para que no sean interpretados como metacaracteres de expresiones regulares y garantizan que se interpreten literalmente. En las búsquedas básicas siempre se utilizan comillas para permitir búsquedas de cadenas exactas en el wikitexto. En las búsquedas avanzadas no se utilizan comillas dobles, de modo que los metacaracteres pueden actuar como operadores condicionales y de ramificación para crear patrones generalizados. insource:/"slash delimited regexp"/
La Búsqueda 2 ejemplifica el filtro más fácil de aplicar para acompañar cualquier búsqueda de expresiones regulares. Simplemente toma la misma frase y conviértela en un término separado. Dada cualquier expresión regular , simplemente acompáñela de un archivo . El último término siempre actuará como un filtro perfecto, haciendo coincidir cada alfanumérico e ignorando cada no alfanumérico, acelerando una búsqueda indexada para filtrar páginas que la expresión regular no podría coincidir. En cuanto a otros filtros, un espacio de nombres es débil, pero cada término adicional aumenta el poder de las expresiones regulares .insource/"exact string search"/insource:"exact string search"
La siguiente sección cubre los argumentos del enlace de búsqueda con más profundidad.
Estos son los parámetros de la plantilla para el enlace de búsqueda.
Sólo necesita utilizar los parámetros del 3 al 20 si desea un perfil de dos o más espacios de nombres para un dominio de búsqueda. De lo contrario, puede simplemente decir el nombre del espacio de nombres (o todos ) al comienzo de la consulta, o un parámetro de prefijo al final de la consulta.
Cuando la consulta pasa por esta plantilla, el dominio de búsqueda predeterminado es el espacio del artículo, tal como lo es para los usuarios básicos. El dominio de búsqueda predeterminado de un usuario, haya iniciado sesión o no, es el espacio del artículo, a menos que el usuario establezca su preferencia . [3] Pero no importa quién utilice un enlace de búsqueda, los resultados siempre serán los mismos. "Cortar y pegar" nunca puede garantizar los mismos resultados para una búsqueda, pero un enlace de búsqueda sí puede hacerlo porque el dominio de búsqueda es solo un espacio de artículo para todos, o el dominio de búsqueda es el conjunto de espacios de nombres que usted establece para todos.
Si conoce los números de su perfil de dominio de búsqueda, simplemente escríbalos ns=ns0&ns1&ns118
. (Puede obtenerlos de la tabla de espacios de nombres a la derecha). De lo contrario, refina su consulta y dominio de búsqueda en la página de resultados de búsqueda, cuya interfaz avanzada está diseñada para seleccionar y ajustar espacios de nombres sin conocer los números de los espacios de nombres. Una vez que eso produce resultados satisfactorios, copia la cadena de espacios de nombres de la URL (en la barra de direcciones de su navegador) y la pega en |ns=
, y puede obtener la consulta desde el cuadro de búsqueda de la página de resultados de búsqueda y pegarla como la consulta, y eso es su enlace de búsqueda.
Si tiene solo un espacio de nombres en su enlace de búsqueda y no es un espacio de artículo, puede especificarlo diciendo, por ejemplo ns=ns10, o |ns10"en la posición del parámetro 3 o mayor:
{{sl|"search link" namespace||ns10}}
→ espacio de nombres "enlace de búsqueda"Para un espacio de nombres se prefiere el nombre explícito:
{{sl|Template:"search link" namespace}}
→ Plantilla: espacio de nombres "enlace de búsqueda"Se prefiere el nombre explícito si va a publicar o guardar su enlace de búsqueda. De esa manera, cuando se ejecuta más tarde, el dominio de búsqueda aparece explícitamente al principio del cuadro de búsqueda de la página de resultados de búsqueda para informar al usuario. De lo contrario, solo la URL y solo el marco de diálogo del perfil del espacio de nombres aparecen en la página de resultados de búsqueda para informar al usuario. Cuando se trata de dos o más espacios de nombres, estas cosas siempre suceden, porque la consulta solo acepta un espacio de nombres (solo como primer término). Pero todo es también una consulta informativa, un pseudoespacio de nombres sólo para búsqueda. Si ve una consulta que comienza con all:, la URL se cargará con todos los parámetros del espacio de nombres.
Puede utilizar "todos" en {{Enlace de búsqueda}} para especificar todos los espacios de nombres:
{{sl|query|ns=all}}
{{sl|query|label|all}}
pero de nuevo, es mucho más preferible decir
{{sl|all:"search link" namespace}}
→ todos: espacio de nombres "enlace de búsqueda"de lo que es usar:
{{sl|"search link" namespace||all}}
→ espacio de nombres "enlace de búsqueda"por las razones expuestas justo arriba. Pero al especificar "todos", el tiempo de consulta es aproximadamente siete veces mayor porque hay muchas más páginas en la wiki que artículos. Si es posible realizar una búsqueda más específica, se ejecutará mucho más rápidamente que la búsqueda "todo".
Por ejemplo, si tiene una consulta para la cual sabe que el dominio de búsqueda es 10 y 11 y no desea ninguna etiqueta , entonces necesita un parámetro 3, pero no necesita el parámetro 2 , por lo que, según las reglas de parámetros de la plantilla, el enlace de búsqueda puede ser hecho de cuatro maneras generales:
{{sl|query||ns10|ns11}}
Cuando el parámetro 1 no tiene nombre y el parámetro 2 no tiene nombre | | (definido como la "cadena vacía"), entonces el parámetro 3 se puede definir sin nombre ns10y el parámetro 4 se puede definir sin nombre ns11
, y así sucesivamente. Nada se nombra porque todo está definido.{{sl|query|3=ns10|4=ns11}}
El parámetro 2 no está definido, pero está bien porque los parámetros 3 y superiores tienen todos nombres...{{sl|query|ns=ns10&ns11}}
o el parámetro posicional vacío | | no es necesario cuando |ns=
se define nombrado.{{sl|query=query|label=|ns=ns10&ns11}}
Todo está nombrado explícitamente.Para otro ejemplo, si selecciona los espacios de nombres "Wikipedia" y "Ayuda", luego ejecuta una consulta, la URL mostrará ns4=1&ns12=1
. Cópialo y pégalo en |ns=ns4=1&ns12=1
. (Nota: puede ignorar la parte "=1" de la URL).
Observe cómo la URL contiene ns0, ns1, ns2 y ns3, y cómo los obtuvo:
{{sl|systems operations|3=ns2|4=ns1|ns=ns3|20=ns0}}
→ operaciones de sistemas{{sl|query = systems operations|||ns2|ns1|ns3|ns0}}
→ operaciones de sistemas{{sl|systems operations|3=ns2&ns1&ns3&ns0}}
→ operaciones de sistemasSi necesita desarrollar un dominio de búsqueda muy específico, uno muy elaborado a partir de un conjunto de treinta espacios de nombres, entonces lo habrá desarrollado en la página de resultados de búsqueda utilizando el selector de dominio de búsqueda avanzada allí. Luego simplemente corta y pega la cadena completa de la URL de los espacios de nombres de dominio de búsqueda encontrados y la pega en un parámetro con nombre |ns=
.
Para escribir los espacios de nombres 0, 2, 4, 5, 7 y 9, sin etiqueta, las dos formas más sencillas son:
{{sl|query||ns0|ns2|ns4|ns5|ns7|ns9}}
{{sl|query|ns=ns0&ns2&ns4&ns5&ns7&ns9}}
El orden es irrelevante.
Todo esto implica filtros . Cualquier enlace de búsqueda con una búsqueda siempre debe proporcionar los términos de consulta adicionales que filtrarían (reducirían) el dominio de búsqueda tanto como fuera posible. Esta plantilla tiene como valor predeterminado el espacio del artículo si no se proporciona ningún espacio de nombres, que es un filtro.insource:/slash delimited regex/
insource:/regex/
La necesidad de hacer coincidir un igual en un artículo no es sorprendente, y es básica. Tienes que usar {{ = }} o |query=
o |1=
simplemente para obtener el signo igual en tu consulta al motor de búsqueda, o {{ ! }} para llevar el carácter de barra vertical al motor de búsqueda. Tanto los caracteres de barra vertical como los signos igual son sensibles a la plantilla para todas las plantillas, por lo que siempre puedes citarlos con llaves como esa dentro de las plantillas. Aunque el cuadro de búsqueda puede tomar = y | directamente, es necesario citar en el enlace de búsqueda porque de lo contrario tienen el significado de sus parámetros.
Las expresiones regulares son sensibles a la puntuación, los corchetes, las matemáticas y otros caracteres simbólicos, conocidos colectivamente como " puntuación ", por lo que los cita, porque de lo contrario tienen su significado de metacarácter de expresiones regulares . Los "metacaracteres" de CirrusSearch han reclamado la mayoría de los caracteres de puntuación como funciones en su expresión regular, pero no es necesario conocer todas las funciones de los metacaracteres sólo para buscarlos como objetivos literalmente. Simplemente puedes citar todos los signos de puntuación para buscarlos como objetivos literales en wikitext. La manera de citar fácilmente cada carácter en una expresión regular completa es poner el término completo entre comillas:insource:/"regexp with literal characters"/
Para obtener un carácter de canalización a través de la plantilla y el motor de búsqueda para orientarlo como un carácter en wikitexto, debe citarlo dos veces, de ahí la necesidad frecuente de los seis caracteres en un enlace de búsqueda avanzada. El signo igual no es un metacarácter, por lo que no es necesario entrecomillarlo dos veces, como ocurre con el carácter de barra vertical. El carácter de barra vertical es un metacarácter que significa O.\{{!}}
Para generar búsquedas avanzadas de expresiones regulares, consulte cómo hacerlo en {{ regex }} .
El motor de búsqueda puede
Una búsqueda coincide con lo que ve en la pantalla y en una vista previa de impresión. El wikitexto "fuente" sin procesar se puede buscar empleando el insourceparámetro. Para estos dos tipos de búsquedas, una palabra es cualquier cadena de letras y números consecutivos que coinciden con una palabra o frase completa. Todos los demás caracteres del teclado, como signos de puntuación, corchetes y barras, símbolos matemáticos y otros, normalmente no se pueden buscar.
De forma predeterminada, la búsqueda también derivará las palabras y las relacionará. Ordena automáticamente los resultados por frecuencia y ubicación, pero también puede mejorar la clasificación de la página por tiempo, uso de plantilla o incluso similitud con otras páginas.
Search es un motor de búsqueda que realiza una búsqueda de texto completo consultando una base de datos de índice . Ofrece una sintaxis de búsqueda y parámetros que superan las capacidades y el control de otros motores de búsqueda públicos que podrían buscar en Wikipedia.
Digamos que se proporciona el cuadro de búsqueda two words. La búsqueda comienza con dos búsquedas de índice y los dos resultados se combinan con un AND lógico. Pero antes de que se muestren como resultados de búsqueda, se les debe asignar a todos una puntuación final antes de que se puedan mostrar los veinte primeros (enumerados en la primera página), y se les debe dar formato con fragmentos y resaltado. La clasificación de páginas se ocupa rápidamente de un gran número de páginas, abordando las cosas estadísticamente y analizando varios datos.
Estos atributos para una palabra le otorgan a esa página una puntuación más alta:
Puede haber varios otros mecanismos de puntuación. Los parámetros que puedes controlar son morelike, boost-templatey prefer-recent.
Ahora hay once parámetros para varios enfoques para buscar en los numerosos espacios de nombres. Cuatro de los siete nuevos parámetros ahora ofrecen apuntar a estas características de la página: hastemplatey linksto, insourcey insource:/regexp/. Los otros tres ahora ofrecen apuntar a la clasificación de la página: morelikefunciona solo, prefer-recentse puede agregar un término a cualquier consulta y ahora también hay un boost-templateparámetro. Los otros cuatro, conservados solo en el nombre, de la versión anterior de Búsqueda completamente reescrita, son intitle, incategory, prefixy namespace .
Cualquier búsqueda incluirá uno de estos enfoques.
El concepto de dominio de búsqueda juega un papel importante en todo esto. Por defecto es sólo espacio de artículo, pero en general un dominio de búsqueda comienza como un conjunto de espacios de nombres y termina como todas las páginas del resultado de búsqueda.
Un término de una consulta establecerá el dominio de búsqueda para otro término en la misma consulta. El orden está optimizado por el motor de búsqueda. La consulta term1 term2transforma el dominio de búsqueda dos veces para obtener esos resultados de búsqueda. Por ejemplo, un espacio de nombres simple devuelve las páginas del espacio de nombres. La consulta se basa en gran medida en los dos primeros términos para reducir el tamaño del dominio de búsqueda. term1 term2 regexp
Todos los términos de una consulta son búsquedas indexadas a menos que sean una expresión regular. Los términos indexados se ejecutan instantáneamente por palabras y una expresión regular se ejecuta lentamente por caracteres . Incluso el uso más básico de una expresión regular, sólo para encontrar una cadena exacta, siempre debe limitar el tamaño de su dominio de búsqueda al mínimo posible. Esto puede ser tan simple como agregar algunos términos (como se explica a continuación), porque cada término en una consulta tiende a reducir el número de páginas. Nunca ejecute una expresión regular simple en la wiki, especialmente si su perfil de usuario está preestablecido en Todo . El motor de búsqueda limita la cantidad de búsquedas de expresiones regulares que se pueden ejecutar a la vez. Sin el filtro adecuado ejecutándose junto con una expresión regular, se ejecutará durante hasta veinte segundos y luego incurrirá en un tiempo de espera de HTML.
En la página de resultados de búsqueda, el dominio de búsqueda inicial en el que se ejecutó la consulta se indica con lo siguiente, con un poder creciente para anular los demás:
Por ejemplo, si el parámetro del espacio de nombres es all, el tamaño del dominio de búsqueda inicial será de 61.130.517 páginas en todos los espacios de nombres: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12. , 13, 14, 15, 100, 101, 118, 119, 710, 711, 828, 829 Un parámetro de prefijo especifica solo uno de esos espacios de nombres, en su totalidad o en parte. Si el dominio de búsqueda inicial es el predeterminado, las páginas de contenido su tamaño son 6.860.439 páginas en el espacio de nombres 0 (espacio del artículo).
Se puede configurar una búsqueda en un enlace para especializar y compartir búsquedas: . Dicha consulta siempre debe especificarse completamente especificando un dominio de búsqueda inicial para evitar discrepancias en el perfil del usuario. De esta manera da los mismos resultados. Por ejemplo, si se necesita más de un espacio de nombres, utilice {{ enlace de búsqueda }} . [6][[Special:Search/search]]
Otros enfoques útiles para las funciones del motor de búsqueda son
Los caracteres de espacio gris son caracteres no alfanuméricos: ~!@#$%^&*()_+{}|[]\:";'<>?,./. Cualquier cadena de caracteres de espacios grises y/o espacios en blanco es "espacio gris".
El espacio gris se ignora excepto cuando tiene significado como modificador en la sintaxis.
Los parámetros también aceptan palabras y frases, pero cada uno puede buscar en su propio índice e interpretar sus propios argumentos, como por ejemplo para
Los delimitadores:
Dos puntos: personaje:
Una búsqueda es una consulta con uno o más términos . En realidad, la consulta no busca en la base de datos de la página, sino que consulta una base de datos de índice de búsqueda preconstruida y mantenida constantemente. Al crear el índice de búsqueda de palabras en la wiki, o al ingresar una consulta, el límite de una palabra es un espacio gris. Los caracteres de espacio gris pueden crear una frase de varias palabras. Debemos decir tabulador y nueva línea aunque no podamos poner esos caracteres en nuestra consulta; esto se debe al hecho importante de que el mismo análisis que se realiza en el wikitexto también se realiza en la consulta. El límite de una palabra son caracteres de espacio en blanco (tabulación, espacio o nueva línea) o caracteres de espacio en gris. Los caracteres de espacios en gris y en blanco se combinan como uno solo, del mismo modo que los caracteres especiales como æ (ae) o á (a) se combinan en los caracteres del teclado estándar.
Una frase expresa un orden de palabras, [7] y hay tres formas de crear una, dependiendo de qué tan agresivamente quieras que coincida la frase.
Las frases "comillas" se denominan "frase exacta" porque son palabras exactas: la raíz , la búsqueda difusa y los comodines no se utilizan en una "frase exacta". Como el resto de la Búsqueda, una "frase exacta" tolera espacios grises entre palabras. Unirse únicamente con (caracteres) no alfanuméricos empleará derivaciones en las palabras. CamelCaseNaming o transiciones de números letter222, coincide con la frase en espacios grises, con la raíz y, además, coincide con la palabra misma. Los parámetros pueden requerir que las comillas incluyan espacios en blanco en su entrada.
El wikitexto se busca empleando el parámetro insource . El parámetro interno también ignora los espacios en gris.
Por ejemplo, para encontrar la frase http://en.wikipedia.org/wiki/Template:Search_link/Search_engine
, uso http://en.wikipedia.org/wiki/Template:Search_link/Search_engineo uso insource: "http en wikipedia org wiki search engine".
Cuando busca una palabra, esa palabra simplemente se busca en un índice . Una búsqueda indexada concluye instantáneamente con todos los títulos de los resultados de la búsqueda , sin tener que buscar en el wiki.
Cada palabra que ves en el contenido de una página (el contenido de un título) ya está en un índice, donde apunta a todos los demás resultados preestablecidos . Una palabra está indexada en una lista de nombres de páginas, donde se ve en el texto o solo en el título.
Cada palabra indexada se ve como
Para transiciones de minúsculas a mayúsculas (o camelCase) y transiciones de letras a números:
para o dígito-letra estos coinciden solos o juntos. En otras palabras, no necesita el espacio, pero eso también funciona para encontrar "palabra" de un caso de camello o una palabra alfanumérica mixta. No necesita un espacio y los caracteres no alfanuméricos se tratan como ese espacio nulo.
A veces podemos llamar a estos caracteres de "palabra" o caracteres "alfanuméricos" en lugar de los caracteres "que no son de palabra", que se ignoran excepto para funcionar como límite de palabra. Por lo general, el límite de una palabra es solo un carácter de espacio.
Estas palabras no distinguen entre mayúsculas y minúsculas: az es equivalente a AZ, por lo que el cuadro de búsqueda navegará al nombre de una página independientemente de las mayúsculas (aunque los wikilinks y las URL deben coincidir con las mayúsculas, aparte del carácter inicial).
Cada palabra tiene un alias para todas sus raíces de palabras, por lo que nube, nube, nubes, nube, nube apuntarán a la misma entrada de índice.
En Buscar los caracteres !@#$%^&*()_+-={}|[]\:;'<>,.?/se ignoran. Cualquier combinación de caracteres de espacios en blanco y estos caracteres que no son palabras, podemos denominarlos espacios grises . El espacio gris, entonces, son todos los caracteres que no son palabras, excepto el carácter de comilla doble, que no se ignora.
El espacio gris es una cadena de uno o más caracteres, como corchetes, símbolos matemáticos, puntuación y espacios. Ahora, se encontrará una palabra indexada de búsqueda entre el espacio gris , y el espacio gris es un AND implícito de dos palabras en una consulta de búsqueda, pero el AND no siempre está implícito: cuando existen dos frases una al lado de la otra, el AND se requiere.
Las excepciones a las "palabras" que se indexan son estas palabras divididas :
El límite de palabras entre tales porciones numéricas y porciones alfabéticas puede incluir espacios grises o no, pero una búsqueda de frases desactiva la división en porciones , porque es una "búsqueda de frases exactas", las palabras de la frase que coinciden solo con palabras alfanuméricas delimitadas por espacios grises. espacio.
Las palabras unidas únicamente por caracteres no alfanuméricos se tratan como una frase. Entonces palabra1_palabra2 y palabra3 es lo mismo que "palabra1 palabra2 palabra 3". Sin embargo, también coincidirán con las transiciones camelCase y letra-número. Una búsqueda de frase exacta no coincidirá con las transiciones camelCase o letra-número. Por ejemplo, se pueden encontrar términos como wgCanonicalNamespace y !wgCanonicalSpecialPageName buscando canonical page name
.
Por ejemplo:
Lo siguiente coincide con el término único txt2regEx
en una página: txt, 2, regex, reg, ex, txt2, 2reg, 2regex. Ninguna de esas partes coincidiría en una búsqueda de frases; sólo coincidiría "txt2regex". [8]
Lo siguiente coincide con los dos términos 2 + 2
: 2o "2", 2 2o "2 2", "2 2"o "2", "2+2"o 2+2, "2-2"o 2-2, "2.2"o 2.2Cada término es una consulta y el espacio gris es un AND.
La derivación es una forma de hacer coincidir el significado "ambiciosamente", para aumentar los números, para una posible coincidencia semántica, de modo que run_shoetambién coincida running shoes
. La derivación es un algoritmo de ortografía que sólo depende remotamente de cualquier diccionario. [9] El algoritmo intenta encontrar la misma palabra , pero en todas sus terminaciones.
Una búsqueda difusa coincidirá con una palabra diferente . Las palabras (pero no las frases) aceptan coincidencias de cadenas aproximadas o "búsqueda difusa". ~Se añade un carácter de tilde para esta búsqueda que "suena como". La otra palabra no debe diferir en más de dos letras .
Pero puede diferir en una letra de esta manera. Una búsqueda difusa coincide exactamente con la palabra más palabras similares.
Con comodines puede especificar qué letras cambian, incluidas las dos primeras letras, y puede aumentar la cantidad de letras que pueden cambiar. Los comodines tienen sus propias reglas:
Mientras se crean y actualizan los índices de palabras, la derivación agrega automáticamente alias a la mayoría de las entradas. No se utiliza un diccionario real. En su lugar, ejecuta un algoritmo que aplica reglas de sintaxis genéricas en inglés para las terminaciones de palabras. Los resultados son imperfectos. [10] Incluso las palabras mal escritas, las que no son palabras y las palabras con números se indexan y derivan de esta manera. Al agregar diferentes formas de la misma palabra a la consulta de búsqueda indexada, la derivación es un método estándar que utilizan los motores de búsqueda para obtener de manera agresiva más resultados de búsqueda y luego ejecutar un conjunto de reglas de clasificación de páginas.
Por ejemplo, la derivación tendrá alias nube , nubes , nublado y nublado . No asignará un alias a la palabra cloudy , pero sí asignará un alias a las diversas formas de nube a la palabra que no es cloudion , porque -ion es una terminación de palabra común.
La derivación se desactiva automáticamente para búsquedas internas:
Para desactivar la derivación, coloque la palabra entre comillas; esta es una búsqueda de "frase exacta". [11]
Por ejemplo: gameFolks, game!folks, game:folks coincide con FolksSoul
Un "Exact phrase"o a wordcoincidirá en un título. Y crear una frase "with tilde"~simplemente requiere derivar (lo que equivale a formar una frase uniendo las palabras with_greyspace). Pero "exact phrase"~1coincide con el texto en ese orden y además permite que cualquier palabra adicional quede entre las dos palabras.
Por ejemplo
"hitch4 hiker2"encuentra las dos "palabras" en ese orden (posiblemente separadas por puntuación o corchetes u otros símbolos del teclado como símbolos matemáticos) y sin las comillas las encuentra en el mismo artículo. En ambos casos, el artículo aparece listado cuando el espacio satisface el significado lógico AND.
hello_dollyhace lo mismo que "hello dolly"hace, pero la versión de comillas dobles ofrece un filtro de proximidad. Después de la cita de cierre agregas una tilde ~ y un número que indica el número total de palabras permitidas entre todos los términos.
La proximidad hacia atrás también funciona, pero incluye las dos palabras finales entre cada segmento. La proximidad no puede acercar la última palabra a la primera. La proximidad puede ser un número grande, como 500 o 1000.
Digamos que una página tiene palabra1, palabra2, palabra3 en ese orden. [12]
Dos términos de búsqueda sin comillas son dos filtros y un montón de reglas de clasificación de páginas.
La lógica de la verdad es Y, O y no .
El OR lógico aumenta los resultados, mientras que el AND lógico los disminuye. El no lógico es una buena manera de refinar una consulta eliminando cualquier tipo de término excepto el parámetro de prefijo .
Por ejemplo while -refining -unwanted search results. Por ejemplo, credit card -"credit card" busca todos los artículos con "tarjeta" y "crédito".
El prefijo y el espacio de nombres son los únicos parámetros posicionales y el espacio de nombres es un parámetro de búsqueda sin nombre. Uno u otro de ellos se utiliza en una consulta para anular el dominio de búsqueda inicial establecido por el perfil de usuario o por la barra de búsqueda. No se usan juntos: el prefijo anula el espacio de nombres.
El argumento del espacio de nombres debe estar al principio de una consulta y el prefix:parámetro debe estar al final de una consulta.
Namespace:es un parámetro de búsqueda sin nombre que va al comienzo de una consulta. [13] El espacio de nombre va seguido de dos puntos, seguido de cero o más caracteres de espacio en blanco. y coincide con el nombre de un espacio de nombres . Los nombres de los espacios de nombres y "todos" funcionan como se esperaba, pero ver uno en el cuadro de búsqueda no garantiza que represente los resultados de la búsqueda, como se explica a continuación.
Además de los nombres habituales de los espacios de nombres y sus alias
Las páginas con espacios de nombres superan en número a las páginas sin ellos en una proporción de 7 a 1 .
En la barra de búsqueda en la página de resultados de búsqueda
Estos difieren del espacio de nombres "todos" al hacer coincidir sus términos de búsqueda dentro de un pdf en una página de ayuda: archivo , ese elemento en la página de resultados de búsqueda dice "(coincide con el contenido del archivo)".
Por ejemplo , el archivo: "885,7 segundos" coincide dentro de un pdf, pero todo: "885,7 segundos" no.
prefix:namespace: string filtra un espacio de nombres a una o más páginas donde la cadena coincide con los caracteres iniciales del nombre de la página. [16] Por ejemplo, prefix:help:t busca nombres de páginas de Ayuda que comienzan con "T".
Prefix puede realizar la función de filtro de espacio de nombres y, además, puede aislar un solo artículo, mientras que intitle no. El prefijo no puede aislar una sola página si tiene subpáginas.
Una alternativa a una consulta de prefijo es Special:PrefixIndex :
Comparando el espacio de nombres y los parámetros de prefijo :
Los siguientes métodos establecen un dominio de búsqueda inicial por espacio de nombres:
Estos están en orden de precedencia. Un prefijo anula un espacio de nombres anula la GUI. El argumento del parámetro de prefijo es un nombre de página completo, que transmite un espacio de nombres .
Al alternar dominios de búsqueda, con las diversas técnicas, y por sus prioridades, merece la pena repetir: comprobar la indicación de la barra de búsqueda; es de lo más sutil. [17]
El panel de selección avanzada de espacio de nombres de la barra de búsqueda no es tan sutil. Permanecerá mientras esté vigente la selección anterior "recordar selección para futuras búsquedas". Puede "recordar" el espacio del artículo y luego 1) presionar Contenido, 2) elegir otro dominio de búsqueda en la barra de búsqueda o 3) eliminar todas las instancias de &profile=advanced
de la URL.
Estos cinco parámetros de búsqueda filtran un espacio de nombres según una palabra o frase de entrada.
Estos nombres de parámetros deben estar en letras minúsculas.
Intitle busca una palabra o frase en el nombre de una página . Como una búsqueda de palabras o frases, se pueden aplicar búsquedas derivadas y difusas .
Para encontrar una coincidencia en un título de redireccionamiento o aplicar una búsqueda de proximidad a un título, puede confiar en el software de clasificación de páginas para aumentar las coincidencias de títulos antes que las de contenido. Por lo tanto, una búsqueda básica de palabras o frases, o una búsqueda de proximidad, es una alternativa a intitle .
Por ejemplo
La categoría tiene el formato general.
y selecciona de la sección de páginas de una categoría determinada , aquellas páginas que también están en el dominio de búsqueda.
Debido a que muchas páginas fuera del espacio principal también están categorizadas, los recuentos a menudo no coincidirán con la categoría a menos que el dominio de búsqueda sea todo el wiki:
La entrada de múltiples categorías cuenta una página solo una vez. Las siguientes dos categorías tienen 209 páginas en el espacio del artículo, con seis páginas en ambas categorías:
Por otro lado se trata de categorías dispares:
Debido a la naturaleza de Wikipedia: categorización, estas categorías no comparten páginas:
Las categorías y la búsqueda son sinérgicas.
En los siguientes ejemplos, observe cómo la descripción de la página en el espacio de nombres de la categoría muestra los tamaños de las categorías en lugar de los tamaños de las páginas.
Hastemplatebusca páginas que transcluyen una plantilla determinada. Encuentra el uso de la plantilla , no solo un patrón de nombre, porque encontrará todas las páginas donde se utilizó el contenido de la plantilla de alguna manera. Los resultados difieren ligeramente según el alias que proporcione.
plantilla has
Si no encuentra el nombre de la plantilla buscada en el wikitexto de la página, puede significar que le dio el nombre de la página canónica pero encontró un alias, o que fue llamada como plantilla secundaria a través de una plantilla que se muestra. en el wikitexto. Para buscar solo llamadas visibles (principales), utilice insource.
Insource: term encuentra una palabra o frase en wikitext.
A diferencia de una búsqueda normal, la fuente interna no encuentra elementos "obtenidos" mediante una transclusión .
Insource apunta al wikitexto de dos maneras. Se ven similares, pero la forma de expresión regular emplea la barra diagonal/carácter para delimitar la expresión regular. [19]
Una expresión regular básica es una manera fácil de encontrar una expresión específica, /"exact strings"/como se muestra a continuación. Las comillas dobles son delimitadores de campos. Son caracteres de escape que citan todo el conjunto de caracteres entre ellos y mantienen su interpretación literal (evitan que se produzca cualquier interpretación de metacaracteres).
Una expresión regular avanzada utiliza los metacaracteres para programar patrones de cadenas generales. Encuentra todo, incluso fragmentos y partes de palabras, sin transmitir ninguna noción de "palabras", sino sólo la de una cadena de caracteres en una secuencia. Los metacaracteres se interpretan a menos que estén entre comillas, comillas dobles o corchetes. Consulte la sección sobre expresiones regulares. El ejemplo obvio es que debe citar cualquier barra en su patrón para que no se interprete como el delimitador de la barra de cierre, y use \/en lugar de /para hacer coincidir una barra literal. Una expresión regular interpreta todos los metacaracteres. Probar un patrón de expresión regular de manera responsable requiere limitar el dominio de búsqueda
Abusar de las expresiones regulares no dañará el rendimiento de Wikipedia, pero limita que la información de búsqueda de expresiones regulares fluya hacia otros lugares.
Sólo las expresiones regulares interpretan caracteres de espacios grises. La fuente interna normal, como en cualquier otro lugar, ignora los caracteres de espacio gris. Entonces insource:"M S"
coincide m/s, al igual que insource:
"M-S"y insource:
"m=s". Pero insource:/M\/S/
lo coincidirá, y la versión filtrada también lo hará: insource:"M/S" insource:/M\/S/
. El insource:"word1 word2"filtro es el filtro más obvio para insource:/word1 word2/, donde las dos palabras de wikitexto solo están separadas por puntuación y espacio. Digamos que la cadena de destino es {{Val|9999|ul=m/s|fmt=commas}}:
insource:
"val 9999 ul m s fmt commas"→ coincidirhastemplate:
val insource:
"9999 ul"→ coincidirhastemplate:
val insource:
"999"→ no hay coincidenciahastemplate:
val insource:
"fmt commas"→ coincidirhastemplate:
val insource:
"ul m"→ coincidirhastemplate:
val insource:
"ul M S"→ coincidirhastemplate:
val insource:
fmt→ coincidirInsource busca palabras secuencialmente, pero la coincidencia podría ocurrir en cualquier parte de la página, no necesariamente dentro de {{template markup}}. Para esto existe {{ uso de plantilla }} y coincide con cualquier expresión regular dentro de la plantilla.
Para una precisión completa, utilice /regex/. Por ejemplo, para encontrar cualquier URL simple dentro de , con , es posible
que no puedas usar el . Adoptando un enfoque cauteloso, antes de probar la expresión regular completa, cree un dominio de búsqueda de menos de 10 000 páginas. Comenzando con dos filtros, prefijo e interno:<ref name=name>...</ref>
[external link brackets label]
ref name=name
insource:"ref http server com"
insource: "ref http" prefix:A
98.000 son demasiados para empezar. insource: "ref http" prefix:AA
1000 es bueno.insource:/\<ref[^>]\> *\[?https?:\/\/[^][<> "]+\]? */
cero para el prefijo: AA, uno para el prefijo: ABinsource:/\<ref[^>]\>
y luego prueba con prefix:AA zero; prueba AB, uno.[^>]*
.insource: "ref http" insource:/\<ref[^>]*\> prefix:AB
. Hay3700 y eso está bien.Tenemos el único filtro posible insource: ref prefix:AA
. Ese filtro produce un dominio de búsqueda de expresiones regulares de solo 2300. El filtro insource: ref prefix:Aproduce un dominio de búsqueda de264 000 . Es posible ejecutar la expresión regular en tantas páginas y produce64 000 resultados.
Para encontrar una URL más específica, diga yahoo.brand.edgar.com, use insource: "http yahoo brand edgar com" (o corte y pegue la URL completa, barras, puntos y todo; no importa). Haga otra búsqueda con la versión https. Estas búsquedas tienen más flexibilidad que Special:LinkSearch . No es necesario ningún filtro, pero cada búsqueda siempre se beneficia de información adicional: cualquier palabra, cualquier frase y la mayoría de los parámetros.
LinkstoInforma enlaces wiki a un nombre de página.
Linksto informa enlaces wiki a un nombre de página, incluso si el enlace wiki es
Linksto puede diferir de la herramienta " Qué enlaces aquí ", porque el dominio de búsqueda de " Qué enlaces aquí " es todo . Los enlaces a los resultados de búsqueda se encuentran en su dominio de búsqueda predeterminado. (También linkstoinforma el recuento, al igual que todas las búsquedas).
Además del wikitexto, busca dentro de una página el contenido transcluido.
primero y luego escanee el contenido. [20] Por ejemplo
informará una lista de 300 artículos que enlazan con él, al igual que " Qué enlaces aquí ". Pero Mozart y la escatología en realidad sólo están vinculados 15 veces por los autores de contenidos . El resto se debe a Mozart y la escatología en Plantilla: Wolfgang Amadeus Mozart en las páginas no deseadas. Se desea la plantilla, pero la referencia a "enlaces a" probablemente no. [21]
El truco para solucionar esto y encontrar todos los enlaces de autoría a un artículo es una búsqueda con expresiones regulares:
Esa búsqueda encontrará artículos solo porque el inicial : limita el dominio de búsqueda inicial al espacio del artículo, sin importar cómo esté configurado su dominio de búsqueda predeterminado. Encontrará todos los enlaces muchas veces más rápido que una simple expresión regular, porque el primer insourcetérmino crea instantáneamente el dominio de búsqueda refinado que establece los límites adecuados para la búsqueda de expresiones regulares. Una expresión regular puede adaptarse a las variaciones encontradas en el wikitexto permitidas por los permisos de los wikilinks: 1) el metacarácter *permite "cero o más" caracteres de espacio antes y después del título, y 2) la [clase de carácter] al principio permite la utilización de mayúsculas relajada en el primer carácter de cualquier nombre de página, y 3) la clase de carácter al final encuentra el enlace, ya sea que esté etiquetado mediante el carácter de barra vertical | o cerrado mediante el corchete ] del wikilink.
Los enlaces a transclusiones son manejados por hastemplate .
La puntuación general de una página determina su lugar en los resultados de búsqueda.
Un mejor partido aumentará el marcador.
La "importancia" de Wikiproject y las evaluaciones de la calidad de los artículos pueden tener en cuenta. La búsqueda desde una página, sus categorías, wikidata y ubicación geográfica pueden tener en cuenta.
Sabiendo esto es posible que puedas encontrar mejor, por ejemplo, un título que recuerdas a medias. El uso de intitle puede distorsionar demasiado los resultados debido al orden de las palabras. Úselos en una búsqueda de palabras y dependa de la clasificación de la página. Las palabras titulares aparecerán en la parte superior.
Para tener una idea de cómo podría funcionar CirrusSearch, consulte mw:Search/Old#Search_Weighting_Ideas.
Para ordenar los resultados de la búsqueda por fecha, utilice prefer-recent . Para ordenar los resultados de la búsqueda por uso de plantilla, utilice boost-template .
El morelikeparámetro de búsqueda enumera todos los artículos que se comparan en frecuencia y longitud de palabras con uno o más artículos determinados.
Morelike calcula una búsqueda de varias palabras.
Véalos resaltados en el fragmento.
Morelike busca los nombres de las páginas dadas en el índice de búsqueda, crea un agregado de frecuencia de palabras y un agregado de longitud de palabras a partir de todas las palabras, y calcula una búsqueda de varias palabras basada en esas configuraciones variables internas. Es una búsqueda costosa.
Por ejemplo, digamos que busca
luego elija un nombre de esa lista y agréguelo
luego agregue más nombres, hasta que tenga cinco nombres de páginas de entrada. Luego podría comenzar a ajustar ciegamente esta consulta más parecida a la calculada automáticamente , diciendo el siguiente tipo de cosas: Hacer la consulta calculada
Luego, digamos, ajusta el número de nombres de páginas de entrada que tienen una palabra a dos (de cinco). https://en.wikipedia.org/w/index.php?title=Special:Search&profile=default&search=morelike:ant%7Cbee%7Cwasp%7CEusociality%7Ctermite&fulltext=Search&cirrusMtlUseFields=yes&cirrusMltFields=opening_text&limit=1150
También puede encontrar artículos similares basándose solo en el título, o solo en los encabezados, o solo en la sección principal.
Los resultados de la búsqueda dependen de Mlt
variables internas ( , más como esto), configurables a través de la URL, sobre qué palabras buscar:
Por ejemplo, aquí se muestra cómo se ve la barra de direcciones (barra de búsqueda convertida) para una búsqueda más parecida a las secciones principales de dos artículos, en comparación con otras secciones principales: https://en.wikipedia.org/w/index.php?title =Special:Search&profile=default&search=morelike:William+H.+Stewart%7CLeroy+Edgar+Burney&fulltext=Search&cirrusMtlUseFields=yes&cirrusMltFields=opening_text Observe el final que contiene los dos parámetros de URL agregados que activaron una capacidad más similar .
Puede ordenar los resultados de la búsqueda por fecha.
Va a cualquier parte de la consulta. El valor predeterminado es 160 días como "reciente" y aplica su fórmula de impulso al 60% de la puntuación. La fórmula no es el multiplicador habitual, es un multiplicador exponencial, potencialmente mucho más potente. Esto le permite funcionar donde el valor predeterminado para "reciente", en lugar de ser 160 días, puede ser tan solo 9 segundos. Si su "reciente" significa 9 segundos, useprefer-recent:0.0001
Por ejemplo, si solo está interesado en los relativamente pocos artículos que han cambiado en la última semana, utilice 7 en su lugar. La forma en que funciona esto es que todos los artículos de más de siete días solo se potencian la mitad, y todos los artículos de más de 14 días se potencian la mitad nuevamente, y así sucesivamente.
El impulso es más que el multiplicador habitual, es exponencial. El factor utilizado en el exponente es el tiempo desde la última edición. Cuanto mayor sea el tiempo transcurrido desde la última edición, menor será el impulso. La fórmula es e −t , donde t es el intervalo en días o el intervalo de interés.
Agregar prefer-recent al comienzo de una búsqueda. Le dará un impulso a los artículos editados más recientemente en los resultados de búsqueda. La forma general es
Este parámetro acepta dos argumentos separados por comas para permitir ajustar la configuración predeterminada. De forma predeterminada, esto escalará el 60 % de la puntuación de manera exponencial con el tiempo transcurrido desde la última edición, con una vida media de 160 días. Entonces el valor predeterminado es prefer-recent:0.6,160.
Esto se puede cambiar para aumentar el peso:
o disminuirlo:
La proporción_de_puntuación_a_escala debe ser un número entre 0 y 1 inclusive. Half_life_in_days debe ser mayor que 0 pero permite puntos decimales, por lo que funciona bastante bien para ordenar tiempos de edición cercanos si son muy pequeños.
Por ejemplo prefer-recent:0.6,0.0001funciona con una vida media de 8,64 segundos.
Eventualmente esto estará activado de forma predeterminada para Wikinews.
Boost-templates :" " agrega peso a las páginas con la plantilla o plantillas proporcionadas (plural). El uso de este parámetro de búsqueda anula la función normal de mejora de plantilla de la Búsqueda. No utilice este parámetro de búsqueda sin proporcionar el argumento de aumento de peso a menos que desee deshabilitar la función de ponderación de plantilla para la búsqueda.
El formato general es
Verá, normalmente el mensaje del sistema [22] titulado MediaWiki:cirrussearch-boost-templates aumenta la puntuación de los siguientes nombres de páginas completas: Plantilla:Artículo destacado|200% Plantilla:Imagen destacada|200% Plantilla:Sonido destacado|200% Plantilla:Destacado lista|175% Plantilla:Buen artículo|150% Plantilla:Categoría Sockpuppet|5% Plantilla:Categoría de mantenimiento|5% Plantilla:Categoría oculta|5% Plantilla:Categoría de seguimiento|5% Plantilla:Clase de categoría|5% Plantilla:Importancia de la categoría |5% Plantilla:CatTrack|5% Plantilla:Categoría de plantilla|5%. Estos son los nombres reales de las plantillas y su impulso real. Estos se reemplazan durante el uso de las plantillas de refuerzo .
Por ejemplo, una búsqueda de "fenómeno" Y "conferencia", con las plantillas Enlace de búsqueda y expresión regular teniendo la puntuación de ponderación de las páginas en las que se encuentran multiplicada por 1,5 y 2,25 respectivamente, ignorando todas las demás plantillas (deteniendo la suma de cualquier puntuación para cualquier otra plantilla):
Boost-templates se diferencia de hastemplate en
Si solo desea que los resultados de su búsqueda incluyan solo páginas con ciertas plantillas, use hastemplate una o más veces para filtrar las páginas que no las tienen. De lo contrario, elija un multiplicador similar al mensaje del sistema que se muestra arriba. Multiplicar la puntuación de una página por 10 se realiza con 1000% y probablemente enmascarará todas las demás funciones de ponderación, como "cuando las palabras de búsqueda coinciden en el título", tendrá poco efecto en la presentación de los resultados de la búsqueda y no se recomienda porque afecta el orden de toda la lista.
Ya sea hastemplate o boost-templates, uno puede ir a cualquier parte de la consulta, cada uno con otros términos a cada lado. es un término en una consulta que puede ir a cualquier parte de la consulta y tener otros términos a ambos lados.
Problemas relevantes en CirrusSearch :
cm2
m3m3
Soluciones alternativas
Solución de problemas
Todas las páginas de Wikipedia son escaneadas e indexadas por el propio motor de búsqueda de Wikipedia . Todo el wiki se trata como un "texto completo" guardado en una base de datos separada (un "índice") creada sólo para realizar búsquedas. Es como el índice de un libro, pero prácticamente cada palabra y cada número está indexado en cada página. [23]
Dado que cada palabra en el índice de búsqueda prediseñado ya apunta a las páginas que la contienen, una búsqueda de palabras clave generalmente corresponde a una búsqueda de un único registro en el índice. (Esto también es cierto para las frases, hasta cierto punto). Las "búsquedas de índice" básicamente no tardan en ejecutarse. Son baratos y abundantes.
Hay índices separados que se mantienen actualizados para:
Cualquier texto transcluido de una plantilla se indexa como si realmente estuviera presente en su página de destino . (En otras palabras, de forma predeterminada, una búsqueda de palabras clave se realiza en el texto de la página de Wikipedia representada , no en la fuente de la página en sí. Sin embargo, puede cambiar esto usando para buscar el marcado de origen en lugar de la página representada).insource:keyword
La preparación y el mantenimiento de los índices de búsqueda se realizan mediante los servidores de Wikipedia, en segundo plano, casi en tiempo real. Tan pronto como guardes la página, unos segundos después podrás buscar los cambios que acabas de realizar. Para las plantillas que se incluyen en muchas páginas, la propagación de esos cambios a todas las páginas del índice puede tardar un tiempo.
El índice se basa en caracteres alfanuméricos; no almacena información sobre caracteres no alfanuméricos. Si escribe puntuación o corchetes en el cuadro de búsqueda al realizar una búsqueda indexada, esos caracteres se descartarán silenciosamente.
Una búsqueda indexada básica
En lugar de realizar una búsqueda indexada básica de palabras clave, puede realizar una búsqueda de expresiones regulares , que omite el índice. Una búsqueda de expresiones regulares escanea el texto de cada página de Wikipedia en tiempo real, carácter por carácter, para encontrar páginas que coincidan con una secuencia o patrón de caracteres específico. A diferencia de la búsqueda de palabras clave, la búsqueda de expresiones regulares distingue entre mayúsculas y minúsculas de forma predeterminada, no ignora la puntuación y opera directamente en la fuente de la página (marcado MediaWiki) en lugar de en el contenido representado de la página.
Para realizar una búsqueda de expresiones regulares, utilice el cuadro de búsqueda normal con la sintaxis o . La expresión denota una expresión regular en la sintaxis de expresión regular con sabor a MediaWiki.insource:/regex/
intitle:/regex/
regex
Debido a que la búsqueda de expresiones regulares escanea cada página carácter por carácter, generalmente es mucho más lenta que una búsqueda de índice. Puede (y debe) agregar términos de búsqueda adicionales cuando los utilice para reducir la cantidad de texto que se procesa. Por ejemplo:insource:/regex/
polish insource:/polish/
busca páginas que coincidan con una búsqueda de palabras clave derivadas que no distinguen entre mayúsculas y minúsculas para "polaco" (incluido "pulido" o "pulido"); luego realiza una búsqueda de expresiones regulares que distingue entre mayúsculas y minúsculas dentro de esas páginas. Sólo se devuelven las páginas que coinciden con ambos filtros.insource:polish insource:/polish/
es similar, pero comienza con una búsqueda que no distingue entre mayúsculas y minúsculas del marcado de origen en lugar de la página representada (por lo que encontrará usos como Poles
y no transclusiones).intitle:
, incategory:
, y linksto:
son excelentes filtros. [ se necesita aclaración ]hastemplate:
es un buen filtro. [ se necesita aclaración ]Agregar un término de búsqueda basado en índice para reducir la cantidad de texto que se escanea es importante simplemente para que su propia búsqueda de expresiones regulares finalice en un período de tiempo razonable. Las búsquedas de expresiones regulares que toman demasiado tiempo "caducarán" y devolverán solo resultados parciales. El uso excesivo de búsquedas lentas de expresiones regulares puede provocar una limitación temporal de la función para usted y/o para todos los usuarios de Wikipedia. (Sin embargo, no se puede afectar el rendimiento del sitio de Wikipedia en su conjunto simplemente abusando de la búsqueda de expresiones regulares). Recuerde que una sola búsqueda de expresiones regulares puede tardar varios segundos y actualmente hay 47.752.020 usuarios registrados en Wikipedia. Utilice la búsqueda de expresiones regulares de manera responsable.
La sintaxis de expresiones regulares de MediaWiki funciona así:
insource:/C-3p0/
buscará páginas que contengan la cadena literal "C-3p0" (distingue entre mayúsculas y minúsculas).. + * ? | { [ ] ( ) " \ # @ < ~
. Se puede omitir cualquier metacarácter precediéndolo con una barra invertida \
. Preceder cualquier otro carácter con una barra invertida es inofensivo. Por ejemplo, insource:/yes\.\no/
buscará páginas que contengan la cadena literal "yes.no" (distingue entre mayúsculas y minúsculas). Los expertos en expresiones regulares deben tener en cuenta que \n
no significa "nueva línea", \d
no significa "dígito", etc.: en la sintaxis de MediaWiki, el único uso de \
es escapar de los metacaracteres./
es especial porque indica el final de la expresión regular. Por ejemplo, insource:/yes/no/
se trata de la misma manera que insource:/yes/ no
(porque la búsqueda de palabras clave no/
ignora la puntuación). El /
carácter debe tener una barra invertida en todos los lugares donde aparece dentro de una expresión regular, incluso dentro de corchetes o comillas..
coincide con cualquier carácter individual. Por ejemplo, insource:/yes.no/
coincide con yes/no
, yes no
, yesuno
, etc.( )
agrupar una secuencia de caracteres en una unidad atómica.|
va entre dos secuencias y coincide con cualquiera de ellas. Por ejemplo, insource:/a(g|ch)e/
coincide con age
o ache
.+
coincide con el carácter o grupo anterior una o más veces. Por ejemplo, insource:/ab+(cd)+/
coincide con abcd
, abbbcd
, abbcdcd
, etc. insource:/a(g|ch)+e/
coincide con agge
, achgchchggche
, etc.*
coincide con el carácter o grupo anterior cualquier número de veces (incluido cero). Por ejemplo, insource:/ab*(cd)*/
coincide con a
, abbb
, acdcd
, etc.?
coincide con el carácter o grupo anterior exactamente cero o una vez.{ }
coincide con el carácter o grupo anterior un número fijo de veces. Por ejemplo, insource:/[a-z]{2}/
coincide exactamente con 2 letras minúsculas seguidas. insource:/[a-z]{2,4}/
coincide con cualquier cadena de 2, 3 o 4 letras minúsculas. insource:/[a-z]{2,}/
coincide con cualquier cadena de 2 o más letras minúsculas.[ ]
introduzca una clase de carácter , que coincida con una única instancia de cualquiera de los caracteres de la clase. Por ejemplo, insource:/[Pp]olish/
coincide con Polish
y polish
. Por lo general, no es necesario escapar de los caracteres entre corchetes, aunque escapar de ellos sigue siendo inofensivo y /
aún así es necesario escapar de ellos en todas partes. Por ejemplo, insource:/[.\/\]\n]/
coincide con una única instancia de .
, /
, ]
o n
.^
(si aparece primero) representa la negación y el carácter -
(a menos que aparezca primero o último) representa un rango. Por ejemplo, insource:/[A-Za-z0-9_]/
coincide con cualquier carácter alfanumérico o guión bajo y insource:/[^A-Za-z]/
coincide con cualquier carácter no alfabético.< >
representan números tratados como números, no como caracteres. Por ejemplo, insource:/AD <476-1453>/
coincide con AD 476
, AD 477
, ... AD 1452
, AD 1453
pero no AD 1474
. (Pero también coincidirá con los primeros seis caracteres de AD 4760
.)~
"mira hacia adelante" y niega el siguiente personaje o grupo. Por ejemplo, insource:/crab~(cake)c/
debe coincidir con los primeros cinco caracteres de, crabclaw
pero no con los primeros cinco caracteres de crabcake
. [ se necesita aclaración ]Hay algunas peculiaridades adicionales de la sintaxis:
@
es sinónimo de .*
(coincide con cualquier secuencia de caracteres).insource:/0/
fracasa insource:/1/
y insource:/\0/
ambos tienen éxito." "
son un mecanismo de escape, como los corchetes o la barra invertida. Por ejemplo, insource:/".*"/
significa lo mismo que insource:/\.\*/
.#
también es un metacarácter y se debe escapar. [ se necesita aclaración ]\n
eso no significa "nueva línea", \d
no significa "dígito", etc.^
no significa "principio del texto" ni $
"fin del texto". Por lo general, buscar desde el principio o el final de una página de Wikipedia no es útil.Aunque las clases de caracteres \n
, \s
, \S
no son compatibles, puedes utilizar estas soluciones:
^ Para excluir también el carácter de tabulación, cópielo y agréguelo al conjunto de caracteres.
En estos rangos, " " (espacio) es el carácter que sigue inmediatamente a los caracteres de control , "!" es el carácter que sigue inmediatamente al espacio y "̏" es U+10FFFF, el último carácter en Unicode . Por lo tanto, el rango de " " a "̏" incluye todos los caracteres excepto los caracteres de control (de los cuales los artículos pueden contener nuevas líneas y tabulación), mientras que el rango de "!" a "̏" incluye todos los caracteres excepto los caracteres de control y el espacio.
|1=
para pasar un signo igual a cualquier parámetro, incluso la etiqueta del enlace.# < > [ ] | { }
.Las expresiones regulares son pequeños programas de computadora, por lo que es característico de las búsquedas de expresiones regulares que deben escribirse mientras se estudian los datos de destino y probarse para lograr su precisión y minuciosidad potenciales. Sin embargo, técnicamente sólo algunas de estas búsquedas intensivas pueden ejecutarse a la vez en la base de datos. [1] Un sandbox minimiza su huella y garantiza que nunca ejecutará una expresión regular no probada en cada espacio de nombres en la wiki, incluso si su búsqueda predeterminada le permitiría hacerlo.
Aunque una búsqueda normal dirigida a todo el wiki se ejecutará rápidamente, una búsqueda con expresiones regulares debe apuntar al menor número posible de páginas mediante el uso de filtros para poder ejecutarse rápidamente. Un filtro es parte o la totalidad de una consulta de base de datos . Los filtros incluyen:
El orden no es importante porque el software optimiza la búsqueda antes de ejecutarla.
Para apuntar solo a una página mientras experimenta o desarrolla una búsqueda de expresiones regulares, oriente un nombre de página completo. Desde el cuadro de búsqueda utiliza el filtro . Desde el cuadro de edición (de cualquier sección de la página con los datos de destino), siempre puede simplemente escribir y se "expandirá" al nombre completo de la página. Aunque puede editar una página de historial, técnicamente una "página de historial" no es una página (en la base de datos), por lo que {{FULLPAGENAME}} apuntará a la versión de la base de datos (no a su propia representación). Por la misma razón, no puedes buscar el wikitexto en una página que aún no esté guardada (en la base de datos), aunque ciertamente puedes cambiar los parámetros de búsqueda una y otra vez sin necesidad de guardarlos .prefix:fullpagenameprefix:{{FULLPAGENAME}}
El nombre de página completo es espacio de nombres: nombre de página . Sabiendo esto puedes ajustar tu parámetro Prefijo. Aunque el prefijo puede filtrar hasta una página, puede filtrar hasta un espacio de nombres y también acepta las letras iniciales de un conjunto de nombres de páginas si desea reducir el dominio de búsqueda del espacio de nombres.
El sandboxing de expresiones regulares utiliza un sandbox ad hoc creado editando cualquier página que contenga los datos de destino y usándola como un "sandbox" (sin editarla para guardarla). Luego se desarrolla agregando un enlace de búsqueda que incluye insource:/ regexp /, con el prefijo de filtro:{{FULLPAGENAME}} al lado.
El uso de una zona de pruebas permite la huella más pequeña posible mediante el uso de filtros para limitar el dominio de búsqueda. Una vez que se perfecciona su patrón de expresión regular, aumenta el dominio de búsqueda. Una búsqueda de expresiones regulares se ejecuta mejor con filtros, no sola, incluso si es una rexexp pulida.
En lugar de usar el cuadro de búsqueda, donde ingresar un signo igual y un carácter de barra vertical y "comillas entre frases" es una cuestión sencilla, sigue siendo más fácil usar una plantilla de vínculo de búsqueda basada en expresiones regulares: {{ regex }} o { { tlusage }} : en la página con datos de muestra, porque luego puede concentrarse en los datos de destino allí y en escribir el patrón de expresión regular. Es más fácil, claro está, si ya entiendes cómo las plantillas "escapan" del carácter de barra vertical y del signo igual. Consulte Ayuda: Plantilla#Parámetros para obtener otros detalles importantes.
El procedimiento aquí es un ciclo iterativo de lectura, evaluación y modificación. El desarrollo de expresiones regulares requiere que estudie los datos de destino mientras escribe y reescribe su patrón.
Advertencia : si cambia el objetivo para una nueva prueba inmediata , tendrá que guardar y purgar , pero no si simplemente cambia la expresión regular.
Como entorno de pruebas ad hoc , puede mostrar el wikitexto de una sección como esta (ya guardada en la base de datos), modificar algunos de los patrones en las llamadas a la plantilla de enlace de búsqueda de expresiones regulares en esta página, hacer una vista previa y ver qué coincide cuando haces clic en el enlace de búsqueda de expresiones regulares recién formado, todo de forma bastante segura y sin cambiar nada en la base de datos.
Las llamadas de plantilla que producen "1 pie/s ,2 pies cuadrados ,3m/s ,4m*s-2 ,5 pies s-2 ,6 °C/J , y7 J/C " aparecen en el wikitexto de esta sección así:
Observe cómo los objetivos anteriores están |numerados|, luego haga clic en los enlaces a continuación.
En el segundo trimestre , observe cómo el software MediaWiki ignora los espacios alrededor de los parámetros, pero cómo en el cuarto trimestre el mismo software MediaWiki procesa los espacios dentro de los parámetros. La pregunta 2 podría haberse resuelto con una insource:val fmtbúsqueda simple porque "fmt" y "val" son palabras completas, y fmt rara vez se ve fuera del interior de Val. Qué tal si hastemplate:val insource:fmt?
Un enlace de búsqueda almacena una consulta en un enlace que lo lleva a resultados de búsqueda en vivo para esa búsqueda almacenada. Se encuentran en páginas de usuarios y páginas de discusión. Utilice uno para ofrecer el conjunto completo de funciones de MediaWiki Search, o funciones de motores de búsqueda externos, para usuarios que no estén familiarizados con sus parámetros de búsqueda.
Un tipo de enlace de búsqueda es un wikilink con todas las capacidades de Búsqueda (cuadro de búsqueda) y con sintaxis estándar de wikilink: . Por lo tanto, este enlace de búsqueda (1) navegará : [[Special:search/Wales]] → Special:search/Wales o (2) buscará: → search/~Wales si antepone un carácter ~ tilde. [[Special:Search/query| label]] [[Special:search/~Wales | search/~Wales]]
Todos los demás enlaces de búsqueda se crean a partir de una plantilla que creará una URL en lugar de un wikilink. Una URL puede, por ejemplo, llamar a motores de búsqueda externos para buscar en Wikipedia.
Los cuadros de búsqueda están formados por <inputbox>
etiquetas. Consulte mw:Extensión:InputBox.
Para búsquedas con coincidencias exactas, exactas en mayúsculas y minúsculas, o en signos de puntuación, consulte Ayuda: Búsqueda § grep .
(term)
<inputbox>...</inputbox>