Pergunta

Primeiro post, então aqui vai. Eu estou escrevendo um script que faz pesquisa inteligente e substituir em uma árvore de arquivos. Essencialmente, o programa obtém o conteúdo de cada arquivo em uma string buffer e executa um jogo com um padrão pré-definido, neste caso, o padrão é /^[^\r\n]*(vendor)[^\r\n]*$/im. O padrão deve encontrar formas maiúsculas e minúsculas de "vendor" e me dar toda a linha que foi combinado. Eu preciso ver toda a linha, a fim de determinar se deve ou não substituir a ocorrência. Este padrão funciona bem para qualquer número de ocorrências de linhas separadas em um determinado arquivo.

No entanto, se houver várias ocorrências em uma determinada linha, o padrão irá corresponder apenas a uma dessas ocorrências, e ignorar os outros. Eu estou tentando determinar se eu preciso ter um segundo padrão de fazer a pesquisa adicional sobre a linha correspondente, ou se eu posso alcançar este objetivo com um único padrão que faz todo o acima.

Apenas uma amostra do que eu estou esperando para produzir. Um exemplo de uma única linha, jogo multi-ocorrência:

Com entusiasmo revolucionar potencialidades VENDEDOR web-enabled Vendedores de base instalada e-tailers.

Gostaria de imprimir algo similar a esta (novamente, o ouput não é a questão aqui, é se ou não eu pode combinar tudo isso com um padrão):

Várias ocorrências em linha: || entusiasticamente revolucionar potencialidades VENDEDOR web-enabled fornecedores instalados e-tailers base. ||

Substituir? (Y, N, Q) || ... abled FORNECEDOR poten ... ||

Substituir? (Y, N, Q) || ... gravatas fornecedores insta ... ||

Por favor, deixe-me saber se eu sou incerto sobre meu objetivo. Obrigado por qualquer ajuda e resposta a isso!

Foi útil?

Solução

Se você estiver usando

/^[^\r\n]*(vendor)[^\r\n]*$/im

Eu sugeriria adicionando o g operador (global)

/^[^\r\n]*(vendor)[^\r\n]*$/img
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top