Convertir PDF a Texto plano en Linux

Convertir texto en pdf es muy facil con el uso de impresoras de PDF o utilizando openoffice por ejemplo. Para la operación inversa tenemos este comando:

  • pdftotext -layout servidor.pdf servidor.c

-layout : Es imprescindible ponerlo, ya que con él guarda la maquetación del pdf original, si no lo poneis se comera todos los saltos de linea, tabuladores y seguramente no sea lo que buscais.
servidor.pdf : Archivo pdf = origen
servidor.c : Archivo texto plano o txt = destino

Aqui pongo este tip, que me ha sido muy util para una práctica que me han dado en pdf, y por copy paste me salía mal. La conversión la hace perfecta excepo en los saltos de página que mete algún caracter utf extraño. Corregirlo no es más que buscar y reemplazar.

Expresiones regulares útiles

En este post ire poniendo algunas expresiones regulares que frecuentemente uso y siempre pierdo el «snippets«. Estos ejemplos estan escritos en PHP, pero son altamente portables estudiando simplemente que función en nuestro lenguaje analiza expresiones regulares. Algunas expresiones regulares no son muy buenas, asi que poner en los comentarios más expresiones regulares y os ire añadiendo.

//Nombre de usuario
//Acepta entre 4 y 28 caracteres de largo, alpha-numérico y acepta guiones_bajos.

$string = "userNaME4234432_";
if (preg_match('/^[a-z\d_]{4,28}$/i', $string))
{
    echo "el patrón coincide con = ".$string."<br />";
}

//Direcciones de email

$string = "first.last@domain.co.uk";
if (preg_match('/^[^0-9][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[@][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[.][a-zA-Z]{2,4}$/',$string))
{
    echo "el patrón coincide con = ".$string."<br />";
}

//Código postal

$string = "55324-4324";
if (preg_match('/^[0-9]{5,5}([- ]?[0-9]{4,4})?$/', $string))
{
    echo "el patrón coincide con = ".$string."<br />";
}

//Dirección IP

$string = "255.255.255.0";
if (preg_match('/^(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:[.](?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}$/',$string))
{
    echo "el patrón coincide con = ".$string."<br />";
}

//Color hexadecimal

$string = "#666666";
if (preg_match('/^#(?:(?:[a-f\d]{3}){1,2})$/i', $string))
{
    echo "el patrón coincide con = ".$string."<br />";
}

//Fechas

$string = "10/15/2007";
if (preg_match('/^\d{1,2}\/\d{1,2}\/\d{4}$/', $string))
{
    echo "el patrón coincide con = ".$string."<br />";
}

Actualizado(jueves, 11 de diciembre de 2008):

Extraido de Mis Algoritmos:

Bueno, para mi y para todos los programadores (con mucho cariño jeje), hago entrega de mi repositorio de Expresiones Regulares :D ,… para aquellos momentos en los que desesperadamente necesito validar o emparejar una cadena de caracteres y no recuerdo como diablos se hace!… ¡Yuju!, no mas sufrimientos jeje

Link, repositorio de expresiones regulares : http://www.mis-algoritmos.com/ejemplos/regex.php

Fuente : http://www.blogandia.com/uncategorized/8-expresiones-regulares/