Como posso excluir todo o resto do meu texto, exceto os textos húngaros?

0

Eu tenho um arquivo de localização de um jogo e, infelizmente, esse arquivo contém toda a linguagem localizada, mas eu só preciso é, os textos hungaryan deles.
Eu gostaria de fazer uma série de vídeos deste jogo, e a coisa realmente grata é que o jogo está transletado, mas não posso usar os textos neste formato e preciso de ajuda para poder apagar tudo do meu texto, exceto o húngaro texto.
O principal está no meu arquivo, depois que cada caractere "," é o próximo idioma, por exemplo:

"KEY","Spanish","English","German","French","Italian","Russian","Portuguese","Japanese","Czech","Chinese","Hungarian","Turkish","Polish","Ukrainian","Latino" "01_01_01_01_01","Toma. Te toca.","Here. It's your turn.","Hier. Du bist dran.","Voilà. C'est ton tour.","Ecco. Tocca a te.","Держи. Теперь твоя очередь.","Toma. É a sua vez.","はい。君の番だよ。","Tady. Jsi na řadě.","来吧。轮到你了。","Tessék, te jössz.","Al, Sıra sende.","Masz. Twoja kolej.","Тримай. Твоя черга.","Toma. Te toca."
"01_01_01_03_01","Sácame de aquí, por favor.","Get me out of here, please.","Bitte hol mich hier raus.","Sors-moi d'ici, je t'en prie.","Fammi uscire di qui, ti prego.","Вытащи меня отсюда, пожалуйста.","Me tira daqui, por favor.","お願い、ここから出して。","Prosím, dostaň mě odsud.","求求你,带我出去吧。","Szabadíts ki innen, kérlek!","Benİ buradan çıkar, lütfen","Proszę, wydostań mnie stąd.","Витягни мене звiдси, будь ласка.","Sácame de aquí, por favor."

E se você depois de contar, minha língua (húngaro) vem depois da vírgula 11. Isso talvez ajude a escrever um bom regex para filtrar as strings húngaras.

    
por user3545446 28.04.2016 / 19:04

2 respostas

0

É muito complicado fazer com um único programa de edição de arquivos. Se você quiser fazer isso, você precisa de um banco de dados mysql, você precisa renomear o arquivo para, por exemplo, file.csv e depois disso, importar para o banco de dados. Agora, se você tiver sorte, você pode executar este comando e você ficará bem:

SELECT 'COLLUMNAME' FROM 'TABLENAME' INTO OUTFILE 'forditas.txt';

Se você não é, como no meu caso, porque este comando está desabilitado no servidor dreamhost, você pode seguir estas instruções:

  1. Depois de importar um banco de dados, você precisa ter certeza de que o charset codificação é setada para utf-8, por causa de caracteres latinos 2.
  2. Depois disso, você precisa de um arquivo create php, por exemplo translate.php , e aí, cole isso no arquivo:

      <html>
        <head> 
           <meta name="viewport" content="width=device-width, initial-scale=1">
           <title>Blues and bullets episode 1</title>
           <script src="//code.jquery.com/jquery-1.11.3.min.js"></script>
           <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
           <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap-theme.min.css">
           <meta charset="UTF-8">
           <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script><script>$(document).ready(function(){$(".text-center p:first").remove();
                $("textarea").val($(".text-center p").text()+"<br>");
              });
    
            </script>
          </head>
    <body>
     <style>
      body{
        background:#eee;
      }
      p{
    
        font-weight:bold;
      }
     </style>
     <div class="container">
       <div class="text-center">
       <textarea></textarea>
         <h1 class="jumbatron">Blues and Bullets magyar szöveg Episode 1</h1><br>
         <?php
           $servername = "MYSQLHOST usarly localhost";//Change this!
           $username = "DATABASE USERNAME";//Change this!
           $password = "PASSWORD";//Change this!
           // Create connection
           $conn = new mysqli($servername, $username, $password);
           $conn->set_charset("utf8");
           // Check connection
           if ($conn->connect_error) {
             die("Connection failed: " . $conn->connect_error);
            } 
    
             $sql = "SELECT 'COLLUM' FROM 'DATABASENAME'.'TABLE 1'";//Chanche this!
    
              $result = $conn->query($sql);
              if ($result->num_rows > 0) {
                  // output data of each row
                  while($row = $result->fetch_assoc()) {
                    $string =$row["COLLUM"];//Change this!
                    $string = preg_replace('/([a-z])([A-Z])/', "\1\n\2", $string);
                      echo "<p>".$string."</p>";
                  }
              } else {
                  echo "0 results";
              }
              $conn->close();
         ?><br>
       </div>
     </div>
    

  3. O próximo passo é, você precisa do chancge de alguma linha neste arquivo. Eu faço um comentário para tudo o que você precisa para cantar, mas eu destaquei aqui as linhas: A primeira coisa é a conexão do banco de dados:

           $servername = "MYSQLHOST usarly localhost";//Change this!
           $username = "DATABASE USERNAME";//Change this!
           $password = "PASSWORD";//Change this!
    

    Por favor, preencha os dados corretos.
    Depois disso, temos esta linha:

    $sql = "SELECT 'COLLUM' FROM 'DATABASENAME'.'TABLE 1'";//Chanche this!
    

    Precisamos dar o número collum e o nome do banco de dados e o nome da tabela. Então, basicamente, mudamos tudo dentro do caractere "". Uma última coisa. Precisamos repetir isso, então você precisa mudar esta linha:

    $string =$row["COLLUM"];//Change this!
    

    Altere o texto COLLUM para o nome real do collum.

por 29.04.2016 / 14:21
0

Eu acho que você precisará da coluna "KEY" no arquivo para fazer as coisas funcionarem. Isso deve ser inserido na caixa de diálogo Substituir antes de pressionar Substituir tudo :

Find what: ^("[^"]+)(","[^"]+){10}(","[^"]+").*
Replace with: 

Lembre-se de que isso funcionará somente se não houver "caracteres em nenhum campo".

    
por 28.04.2016 / 20:49