Python, retirer les accents d'une chaine

2014-07-01 | #accent #accents #python #retirer #supprimer #unicode #unicodedata

#!/usr/bin/python # -*- coding: utf-8 -*- import re import unicodedata def deaccent(some_unicode_string): return ''.join(c for c in unicodedata.normalize('NFD', some_unicode_string) if unicodedata.category(c) != 'Mn') >>> s="Dès Noël où un zéphyr haï me vêt de glaçons würmiens je dîne d’exquis rôtis de bœuf au kir à l’aÿ d’âge mûr & cætera !" >>> deaccent(s) 'Des Noel ou un zephyr hai me vet de glacons wurmiens je dine d’exquis rotis de bœuf au kir a l’ay d’age mur & cætera !

Continuer la lecture 


bash, initialiser un tableau avec le retour d'une commande et itérer dessus

2014-05-08 | #array #bash #iterate #loop #mapfile

Cette méthode est sûre concernant les espaces contenus dans les lignes renvoyées par la commande :) $ tree . ├── a │ ├── a 1 │ └── a 2 ├── b │ ├── b 1 │ └── b 2 └── c ├── c 1 └── c 2 3 directories, 6 files $ mapfile -t files < <(find -type f) $ for file in "${files[@]}"; do > echo "file: $file" > done file: .

Continuer la lecture 


java & xpath : getNFirstXpath

2014-04-11 | #java #xpath

private Object getNFirstXpath(HtmlPage page, String fmt, Object ... args) { String request; if (args.length == 0) { request = fmt; } else { request = String.format(fmt, args); } List inputs = page.getByXPath(request); if (inputs == null || inputs.size() == 0) { resultat = String.format("L'\u00e9lement '%s' n'a pas \u00e9t\u00e9 trouv\u00e9 dans la page", request); return null; } return inputs.get(0); } HtmlCheckBoxInput o = (HtmlCheckBoxInput) getNFirstXpath(page, String.format("//input[@type='checkbox'][@id='id_%s_activation']", champ, valeur)); HtmlTextInput o = (HtmlTextInput) getNFirstXpath(page, String.

Continuer la lecture 


Comment modifier rapidement une palanquée de fichiers de conf...

2014-03-12 | #bash

#!/bin/bash cat <<EOF > container.tpl <Resource auth="Container" name="jdbc/configb" type="javax.sql.DataSource" factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://%s/%s" username="%s" password="%s" initialSize="0" maxActive="30" maxIdle="4" minIdle="0" maxWait="10000" poolPreparedStatements="true" testOnBorrow="true" timeBetweenEvictionRunsMillis="60000" numTestsPerEvictionRun="30" minEvictableIdleTimeMillis="180000" removeAbandoned="true" removeAbandonedTimeout = "60" logAbandoned="true" /> EOF #\$0 pour ne pas interpreter... cat <<EOF > container.awk /name="jdbc\/3900"/ { gsub("jdbc/3900", "jdbc/data", \$0); } match(\$0, /<Parameter name="mysql.host" value="(.+)" override="true"\/>/, m) { host=m[1]; next } match(\$0, /<Parameter name="mysql.database" value="(.+)" override="true"\/>/, m) { database=m[1]; next } match(\$0, /<Parameter name="mysql.username" value="(.+)" override="true"\/>/, m) { username=m[1]; next } match(\$0, /<Parameter name="mysql.

Continuer la lecture 


awk, extraire des paragraphes

2014-02-01 | #awk #bash #commande

Avec awk, il est possible d’extraire des paragraphes spécifiques par leur ordre d’apparence. Il faut positionner le séparateur d’enregistrements RS et donner les numéros de paragraphe que l’on souhaite extraire via un if comme dans l’exemple ci-dessous. $ cat a NODE-ID> command1 Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat.

Continuer la lecture 


html/java, input file sympa avec bootstrap

2014-01-28 | #bootstrap #html

Dans le cadre d’un projet, j’ai redesigné un formulaire qui permet d’importer un fichier csv (utilise bootstrap). Le rendu est le suivant : <form method="post" action="/somewhere" enctype="multipart/form-data" class="form-horizontal"> <div class="control-group"> <label class="control-label" for="fichier_csv">fichier.csv</label> <input type="file" id="fichier_csv" name="fichier_csv" style="display:none" /> <div class="controls"> <div class="input-append"> <input id="fichier_path" class="input-large" type="text"> <a class="btn" onclick="$('input[id=fichier_csv]').click();"> <i class="icon-folder-open"></i> <span>Sélectionner...</span> </a> </div> </div> <script type="text/javascript"> $('input[id=fichier_csv]').change(function() { $('#fichier_path').val($(this).val()); }); </script> </div> </form> Le code java est le suivant (attention, lorsque le type du formulaire est enctype=“multipart/form-data”, les paramètres ne se récupèrent plus avec HttpServletRequest.

Continuer la lecture 