#1 Le 19/09/2022, à 23:59
- Makogonov
Supprimer du contenu à l'intérieur d'accolades
Bonjour,
Je dispose d'une partie d'échecs (au format pgn). Malheureusement, elle est annotée avec des accolades. Ainsi, comment supprimer tout le contenu présent dans ces accolades (et supprimer les accolades avec) ? J'imagine qu'il est question de sed, grep et/ou regex, mais je n'ai pas le skill pour trouver le script.
Si quelqu'un pouvait m'aider, voici la partie :
(est-il également possible que vous commentiez chaque expression, option de votre script afin que je le comprenne ?)
Thanks guys
1. d4 { [%clk 0:05:00] } 1... Nf6 { [%clk 0:04:56] } { [%eval 0.45] } 2. c4 { [%clk 0:04:59] } { [%eval 0.5] } 2... e6 { [%clk 0:04:55] } { [%eval 0.82] } 3. Nc3 { [%clk 0:04:57] } { [%eval 0.34] } 3... Bb4 { [%clk 0:04:53] } { [%eval 0.41] } 4. a3 { [%clk 0:04:57] } { [%eval 0.26] } 4... Bxc3+ { [%clk 0:04:50] } { [%eval 0.34] } 5. bxc3 { [%clk 0:04:57] } { [%eval 0.12] } 5... b6 { [%clk 0:04:40] } { [%eval 0.02] } 6. f3 { [%clk 0:04:56] } { [%eval -0.16] } 6... Ba6 { [%clk 0:04:37] } { [%eval 0.29] } 7. e4 { [%clk 0:04:54] } { [%eval 0.14] } 7... Nc6 { [%clk 0:04:32] } { [%eval 0.09] } 8. Bd3 { [%clk 0:04:53] } { 0.09 → -0.53 Inaccuracy. Bg5 was best. } { [%eval -0.53] } (8. Bg5) 8... Na5 { [%clk 0:04:30] } { [%eval -0.58] } 9. Qe2 { [%clk 0:04:52] } { [%eval -0.75] } 9... O-O { [%clk 0:04:24] } { -0.75 → 0.74 Mistake. c5 was best. } { [%eval 0.74] } (9... c5) 10. e5 { [%clk 0:04:51] } { [%eval 0.29] } 10... Ne8 { [%clk 0:04:19] } { [%eval 0.42] } 11. Nh3 { [%clk 0:04:43] } { [%eval 0.2] } 11... Qh4+ { [%clk 0:04:14] } { [%eval 0.6] } 12. Kf1 { [%clk 0:04:39] } { 0.6 → -1.2 Blunder. Nf2 was best. } { [%eval -1.2] } (12. Nf2) 12... f6 { [%clk 0:04:10] } { [%eval -0.72] } 13. Bf4 { [%clk 0:04:18] } { [%eval -1.05] } 13... fxe5 { [%clk 0:04:00] } { [%eval -0.74] } 14. Bg5 { [%clk 0:03:47] } { -0.74 → -1.27 Inaccuracy. Bg5 was best. } { [%eval -1.27] } (14. Bg5 Qh5 15. dxe5 d6 16. Re1 dxe5 17. Qxe5 Nd6 18. Qxe6+ Qf7 19. Nf4 Bxc4 20. Bxc4 Naxc4) 14... Qh5 { [%clk 0:03:51] } { [%eval -0.85] } 15. dxe5 { [%clk 0:03:18] } { [%eval -1.17] } 15... Kh8 { [%clk 0:03:04] } { -1.17 → 0.68 Blunder. d6 was best. } { [%eval 0.68] } (15... d6) 16. Qe4 { [%clk 0:03:08] } { 0.68 → -1.07 Blunder. Re1 was best. } { [%eval -1.07] } (16. Re1 Kg8) 16... Nb3 { [%clk 0:02:51] } { -1.07 → 2.49 Blunder. Bb7 was best. } { [%eval 2.49] } (16... Bb7 17. Qe3) 17. Qxa8 { [%clk 0:02:58] } { [%eval 3.32] } 17... Nxa1 { [%clk 0:02:42] } { [%eval 3.3] } 18. Be7 { [%clk 0:02:56] } { [%eval 3.3] } 18... Rg8 { [%clk 0:02:13] } { [%eval 3.06] } 19. Qxa7 { [%clk 0:02:38] } { [%eval 2.49] } 19... Qxe5 { [%clk 0:01:52] } { [%eval 2.73] } 20. Qxa6 { [%clk 0:02:26] } { [%eval 2.17] } 20... Qxc3 { [%clk 0:01:51] } { 2.17 → 2.99 Inaccuracy. Nb3 was best. } { [%eval 2.99] } (20... Nb3) 21. c5 { [%clk 0:02:11] } { [%eval 2.91] } 21... Qc1+ { [%clk 0:01:44] } { 2.91 → 4.79 Mistake. Qc1+ was best. } { [%eval 4.79] } (21... Qc1+) 22. Kf2 { [%clk 0:02:06] } { [%eval 4.37] } 22... Qxh1 { [%clk 0:01:42] } { 4.37 → 5.68 Inaccuracy. Qb2+ was best. } { [%eval 5.68] } (22... Qb2+) 23. cxb6 { [%clk 0:01:50] } { 5.68 → 2.26 Blunder. Ng5 was best. } { [%eval 2.26] } (23. Ng5) 23... cxb6 { [%clk 0:01:40] } { [%eval 4.75] } 24. Ng5 { [%clk 0:01:18] } { 4.75 → 3.29 Inaccuracy. Ng5 was best. } { [%eval 3.29] } (24. Ng5 g6 25. Qc8 Qxh2 26. Nf7+ Kg7 27. Qxd7 Qc7 28. Qxe6 Qf4 29. Ne5 b5 30. Bg5 Qd4+) 24... g6 { [%clk 0:01:20] } { 3.29 → 7.41 Blunder. g6 was best. } { [%eval 7.41] } (24... g6 25. Qc8) 25. Qxb6 { [%clk 0:01:06] } { 7.41 → 0.72 Blunder. Qc4 was best. } { [%eval 0.72] } (25. Qc4) 25... Qxh2 { [%clk 0:00:36] } { 0.72 → 4.49 Blunder. Qc1 was best. } { [%eval 4.49] } (25... Qc1) 26. Qd4+ { [%clk 0:01:00] } { [%eval 5.02] } 26... e5 { [%clk 0:00:35] } { 5.02 → 11.23 Mistake. Rg7 was best. } { [%eval 11.23] } (26... Rg7) 27. Qxa1 { [%clk 0:00:49] } { 11.23 → 3.72 Blunder. Nf7+ was best. } { [%eval 3.72] } (27. Nf7+ Kg7 28. Nxe5 Nb3 29. Qxd7 Kh8 30. Nf7+ Kg7 31. Nd6 Kh6 32. Nxe8 Nd4 33. Bf6 Nxf3) 27... h6 { [%clk 0:00:34] } { 3.72 → 6.93 Mistake. Rg7 was best. } { [%eval 6.93] } (27... Rg7 28. Bd8) 28. Nf7+ { [%clk 0:00:44] } { [%eval 6.86] } 28... Kg7 { [%clk 0:00:33] } { [%eval 9.53] } 29. Nxe5 { [%clk 0:00:31] } { [%eval 8.98] } 29... Kh7 { [%clk 0:00:29] } { [%eval 9.81] } 30. Ng4 { [%clk 0:00:15] } { [%eval 6.73] } 30... Qf4 { [%clk 0:00:21] } { [%eval 7.23] } 31. Qe5 { [%clk 0:00:04] } { [%eval 7.1] } 31... Qd2+ { [%clk 0:00:19] } { [%eval 7.54] } 32. Qe2 { [%clk 0:00:02] } { [%eval 6.15] } 32... Qxe2+ { [%clk 0:00:16] } { [%eval 6.48] } 33. Kxe2 { [%clk 0:00:02] } { [%eval 6.11] } 33... Nc7 { [%clk 0:00:15] } { 6.11 → 9.1 Inaccuracy. h5 was best. } { [%eval 9.1] } (33... h5 34. Ne5 Kg7 35. Nxg6 Nf6 36. Bd6 Nd5 37. Nf4 Nxf4+ 38. Bxf4 Kf6 39. g3 Ra8 40. Bc1) 34. Ne5 { [%clk 0:00:01] } { 9.1 → 5.84 Inaccuracy. Nf6+ was best. } { [%eval 5.84] } (34. Nf6+ Kg7 35. Nxg8 Kxg8 36. a4 Kf7 37. Bd6 Ne6 38. a5 Nd4+ 39. Kf2 Nc6 40. a6 Ke6) 34... Nd5 { [%clk 0:00:13] } { [%eval 5.76] } 35. Bf6 { [%clk 0:00:01] } { 5.76 → -2.56 Blunder. Nxg6 was best. } { [%eval -2.56] } (35. Nxg6 Rxg6 36. Bxg6+ Kxg6 37. Bc5 h5 38. Kd2 Nf4 39. g3 Ne6 40. Bf2 Kf6 41. a4 Ke7) 35... Nf4+ { [%clk 0:00:12] } { -2.56 → 2.72 Blunder. Nxf6 was best. } { [%eval 2.72] } (35... Nxf6 36. Nxg6 Ra8 37. Ne7+ Kh8 38. Nf5 h5 39. g4 Rxa3 40. gxh5 Nxh5 41. Ke3 Kg8 42. Nd6) 36. Ke3 { [%clk 0:00:00] } { 2.72 → -1.27 Blunder. Kd2 was best. } { [%eval -1.27] } (36. Kd2 d6 37. Nc4 Nxg2 38. Be4 h5 39. Nxd6 h4 40. Be5 Rf8 41. Bh2 h3 42. a4 Rb8) 36... Nxd3 { [%clk 0:00:11] } { black wins on time. } { -1.27 → 3.35 Blunder. Nd5+ was best. } { [%eval 3.35] } (36... Nd5+ 37. Kd4 Nxf6 38. a4 Ra8 39. Bc2 Kg7 40. Nxg6 h5 41. Nf4 Ra5 42. Kc4 Kh6 43. g3)
Dernière modification par Makogonov (Le 20/09/2022, à 08:30)
Hors ligne
#2 Le 20/09/2022, à 00:07
- Vobul
Re : Supprimer du contenu à l'intérieur d'accolades
Si le fichier qui contient les données se nomme "pgn":
tr -d '{}' < pgn
Comment ça fonctionne ?
man tr
Vobul
Utilisez le retour utilisable de commandes !!!
J'aime la langue française, mais je parle franglais, deal with it.
RTFM
Hors ligne
#3 Le 20/09/2022, à 00:20
- Watael
Re : Supprimer du contenu à l'intérieur d'accolades
est-il également possible que vous commentiez chaque expression, option de votre script afin que je le comprenne ?
est-ce que tu veux un Mars® avec ?
Connected \o/
Welcome to sHell. · eval is evil.
En ligne
#4 Le 20/09/2022, à 00:26
- Watael
Re : Supprimer du contenu à l'intérieur d'accolades
Si le fichier qui contient les données se nomme "pgn":
tr -d '{}' < pgn
Comment ça fonctionne ?
man tr
je crois que ce que cherche Makogonov , c'est
$ sed 's/{[^}]*}//g' chess.pgm
supprimer tout le contenu présent dans ces accolades (et supprimer les accolades avec)
Connected \o/
Welcome to sHell. · eval is evil.
En ligne
#5 Le 20/09/2022, à 00:36
- Makogonov
Re : Supprimer du contenu à l'intérieur d'accolades
Si le fichier qui contient les données se nomme "pgn":
tr -d '{}' < pgn
Comment ça fonctionne ?
man tr
Cela ne fait que supprimer les accolades sans supprimer le contenu.
Dernière modification par Makogonov (Le 20/09/2022, à 00:37)
Hors ligne
#6 Le 20/09/2022, à 00:46
- Makogonov
Re : Supprimer du contenu à l'intérieur d'accolades
Vobul a écrit :Si le fichier qui contient les données se nomme "pgn":
tr -d '{}' < pgn
Comment ça fonctionne ?
man tr
je crois que ce que cherche Makogonov , c'est
$ sed 's/{[^}]*}//g' chess.pgm
Makogonov a écrit :supprimer tout le contenu présent dans ces accolades (et supprimer les accolades avec)
C'est exactement ça (il manque juste le mars et les explications). Car j'ai du mal à interpréter ce motif : {[^}]*}
Je vous remercie pour votre réactivité et pour pour l'efficacité de votre script. J'ai également fait la même chose pour effacer les parenthèses et leur contenu. Aussi, quel serait le moyen pour effacer accolades (et leur contenu) + parenthèses (et leur contenu) en un seul script ? (histoire d'optimiser car c'est une manipulation que je devrai faire souvent).
Dernière modification par Makogonov (Le 20/09/2022, à 01:35)
Hors ligne
#7 Le 20/09/2022, à 02:26
- Watael
Re : Supprimer du contenu à l'intérieur d'accolades
ça supprime, depuis l'accolade ouvrante, tout ce qui n'est pas une accolade fermante, jusqu'à la plus proche accolade fermante.
Connected \o/
Welcome to sHell. · eval is evil.
En ligne
#8 Le 20/09/2022, à 05:24
- xubu1957
Re : Supprimer du contenu à l'intérieur d'accolades
Bonjour,
Comme demandé dans le premier message du tutoriel Retour utilisable de commande
Pour ajouter toi-même les balises code à ton précédent message #1 :
Cliquer sur le lien « Modifier » en bas à droite du message
Sélectionner le texte
Cliquer sur le <> de l'éditeur de message
1. d4 { [%clk 0:05:00] } 1... Nf6 { [%clk 0:04:56] } { [%eval 0.45] }
2. c4 { [%clk 0:04:59] } { [%eval 0.5] } 2... e6 { [%clk 0:04:55] } { [%eval 0.82] }
3. Nc3 { [%clk 0:04:57] } { [%eval 0.34] }
3... Bb4 { [%clk 0:04:53] } { [%eval 0.41] } 4. a3 { [%clk 0:04:57] } { [%eval 0.26] }
4... Bxc3+ { [%clk 0:04:50] } { [%eval 0.34] } 5. bxc3 { [%clk 0:04:57] } { [%eval 0.12] }
5... b6 { [%clk 0:04:40] } { [%eval 0.02] }
6. f3 { [%clk 0:04:56] } { [%eval -0.16] } 6... Ba6 { [%clk 0:04:37] } { [%eval 0.29] }
7. e4 { [%clk 0:04:54] } { [%eval 0.14] } 7... Nc6 { [%clk 0:04:32] } { [%eval 0.09] }
8. Bd3 { [%clk 0:04:53] } { 0.09 → -0.53 Inaccuracy. Bg5 was best. } { [%eval -0.53] }
(8. Bg5) 8... Na5 { [%clk 0:04:30] } { [%eval -0.58] }
9. Qe2 { [%clk 0:04:52] } { [%eval -0.75] } 9... O-O { [%clk 0:04:24] } { -0.75 → 0.74 Mistake. c5 was best. } { [%eval 0.74] }
(9... c5)
10. e5 { [%clk 0:04:51] } { [%eval 0.29] }
10... Ne8 { [%clk 0:04:19] } { [%eval 0.42] }
11. Nh3 { [%clk 0:04:43] } { [%eval 0.2] }
11... Qh4+ { [%clk 0:04:14] } { [%eval 0.6] }
12. Kf1 { [%clk 0:04:39] } { 0.6 → -1.2 Blunder. Nf2 was best. } { [%eval -1.2] }
(12. Nf2)
12... f6 { [%clk 0:04:10] } { [%eval -0.72] }
13. Bf4 { [%clk 0:04:18] } { [%eval -1.05] }
13... fxe5 { [%clk 0:04:00] } { [%eval -0.74] }
14. Bg5 { [%clk 0:03:47] } { -0.74 → -1.27 Inaccuracy. Bg5 was best. } { [%eval -1.27] }
(14. Bg5 Qh5 15. dxe5 d6 16. Re1 dxe5 17. Qxe5 Nd6 18. Qxe6+ Qf7 19. Nf4 Bxc4 20. Bxc4 Naxc4)
14... Qh5 { [%clk 0:03:51] } { [%eval -0.85] }
15. dxe5 { [%clk 0:03:18] } { [%eval -1.17] }
15... Kh8 { [%clk 0:03:04] } { -1.17 → 0.68 Blunder. d6 was best. } { [%eval 0.68] }
(15... d6)
16. Qe4 { [%clk 0:03:08] } { 0.68 → -1.07 Blunder. Re1 was best. } { [%eval -1.07] }
(16. Re1 Kg8)
16... Nb3 { [%clk 0:02:51] } { -1.07 → 2.49 Blunder. Bb7 was best. } { [%eval 2.49] }
(16... Bb7 17. Qe3) 17. Qxa8 { [%clk 0:02:58] } { [%eval 3.32] }
17... Nxa1 { [%clk 0:02:42] } { [%eval 3.3] }
18. Be7 { [%clk 0:02:56] } { [%eval 3.3] }
18... Rg8 { [%clk 0:02:13] } { [%eval 3.06] }
19. Qxa7 { [%clk 0:02:38] } { [%eval 2.49] }
19... Qxe5 { [%clk 0:01:52] } { [%eval 2.73] }
20. Qxa6 { [%clk 0:02:26] } { [%eval 2.17] }
20... Qxc3 { [%clk 0:01:51] } { 2.17 → 2.99 Inaccuracy. Nb3 was best. } { [%eval 2.99] }
(20... Nb3) 21. c5 { [%clk 0:02:11] } { [%eval 2.91] }
21... Qc1+ { [%clk 0:01:44] } { 2.91 → 4.79 Mistake. Qc1+ was best. } { [%eval 4.79] }
(21... Qc1+) 22. Kf2 { [%clk 0:02:06] } { [%eval 4.37] }
22... Qxh1 { [%clk 0:01:42] } { 4.37 → 5.68 Inaccuracy. Qb2+ was best. } { [%eval 5.68] }
(22... Qb2+) 23. cxb6 { [%clk 0:01:50] } { 5.68 → 2.26 Blunder. Ng5 was best. } { [%eval 2.26] }
(23. Ng5) 23... cxb6 { [%clk 0:01:40] } { [%eval 4.75] }
24. Ng5 { [%clk 0:01:18] } { 4.75 → 3.29 Inaccuracy. Ng5 was best. } { [%eval 3.29] }
(24. Ng5 g6 25. Qc8 Qxh2 26. Nf7+ Kg7 27. Qxd7 Qc7 28. Qxe6 Qf4 29. Ne5 b5 30. Bg5 Qd4+)
24... g6 { [%clk 0:01:20] } { 3.29 → 7.41 Blunder. g6 was best. } { [%eval 7.41] }
(24... g6 25. Qc8) 25. Qxb6 { [%clk 0:01:06] } { 7.41 → 0.72 Blunder. Qc4 was best. } { [%eval 0.72] }
(25. Qc4)
25... Qxh2 { [%clk 0:00:36] } { 0.72 → 4.49 Blunder. Qc1 was best. } { [%eval 4.49] }
(25... Qc1) 26. Qd4+ { [%clk 0:01:00] } { [%eval 5.02] }
26... e5 { [%clk 0:00:35] } { 5.02 → 11.23 Mistake. Rg7 was best. } { [%eval 11.23] }
(26... Rg7)
27. Qxa1 { [%clk 0:00:49] } { 11.23 → 3.72 Blunder. Nf7+ was best. } { [%eval 3.72] }
(27. Nf7+ Kg7 28. Nxe5 Nb3 29. Qxd7 Kh8 30. Nf7+ Kg7 31. Nd6 Kh6 32. Nxe8 Nd4 33. Bf6 Nxf3)
27... h6 { [%clk 0:00:34] } { 3.72 → 6.93 Mistake. Rg7 was best. } { [%eval 6.93] }
(27... Rg7 28. Bd8) 28. Nf7+ { [%clk 0:00:44] } { [%eval 6.86] }
28... Kg7 { [%clk 0:00:33] } { [%eval 9.53] } 29. Nxe5 { [%clk 0:00:31] } { [%eval 8.98] }
29... Kh7 { [%clk 0:00:29] } { [%eval 9.81] } 30. Ng4 { [%clk 0:00:15] } { [%eval 6.73] }
30... Qf4 { [%clk 0:00:21] } { [%eval 7.23] } 31. Qe5 { [%clk 0:00:04] } { [%eval 7.1] }
31... Qd2+ { [%clk 0:00:19] } { [%eval 7.54] } 32. Qe2 { [%clk 0:00:02] } { [%eval 6.15] }
32... Qxe2+ { [%clk 0:00:16] } { [%eval 6.48] } 33. Kxe2 { [%clk 0:00:02] } { [%eval 6.11] }
33... Nc7 { [%clk 0:00:15] } { 6.11 → 9.1 Inaccuracy. h5 was best. } { [%eval 9.1] }
(33... h5 34. Ne5 Kg7 35. Nxg6 Nf6 36. Bd6 Nd5 37. Nf4 Nxf4+ 38. Bxf4 Kf6 39. g3 Ra8 40. Bc1)
34. Ne5 { [%clk 0:00:01] } { 9.1 → 5.84 Inaccuracy. Nf6+ was best. } { [%eval 5.84] }
(34. Nf6+ Kg7 35. Nxg8 Kxg8 36. a4 Kf7 37. Bd6 Ne6 38. a5 Nd4+ 39. Kf2 Nc6 40. a6 Ke6)
34... Nd5 { [%clk 0:00:13] } { [%eval 5.76] }
35. Bf6 { [%clk 0:00:01] } { 5.76 → -2.56 Blunder. Nxg6 was best. } { [%eval -2.56] }
(35. Nxg6 Rxg6 36. Bxg6+ Kxg6 37. Bc5 h5 38. Kd2 Nf4 39. g3 Ne6 40. Bf2 Kf6 41. a4 Ke7)
35... Nf4+ { [%clk 0:00:12] } { -2.56 → 2.72 Blunder. Nxf6 was best. } { [%eval 2.72] }
(35... Nxf6 36. Nxg6 Ra8 37. Ne7+ Kh8 38. Nf5 h5 39. g4 Rxa3 40. gxh5 Nxh5 41. Ke3 Kg8 42. Nd6)
36. Ke3 { [%clk 0:00:00] } { 2.72 → -1.27 Blunder. Kd2 was best. } { [%eval -1.27] }
(36. Kd2 d6 37. Nc4 Nxg2 38. Be4 h5 39. Nxd6 h4 40. Be5 Rf8 41. Bh2 h3 42. a4 Rb8)
36... Nxd3 { [%clk 0:00:11] } { black wins on time. } { -1.27 → 3.35 Blunder. Nd5+ was best. } { [%eval 3.35] }
(36... Nd5+
37. Kd4 Nxf6
38. a4 Ra8
39. Bc2 Kg7
40. Nxg6 h5
41. Nf4 Ra5
42. Kc4 Kh6
43. g3)
J'ai un peu aligné !
Dernière modification par xubu1957 (Le 20/09/2022, à 05:51)
Conseils pour les nouveaux demandeurs et pas qu'eux
Important : Pensez à passer vos sujets en [Réso|u] lorsque ceux-ci le sont, au début du titre en cliquant sur Modifier sous le premier message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci. Membre de Linux-Azur
Hors ligne
#9 Le 20/09/2022, à 08:30
- Makogonov
Re : Supprimer du contenu à l'intérieur d'accolades
Merci pour vos réponses les amis
Hors ligne
#10 Le 20/09/2022, à 09:10
- Tawal
Re : Supprimer du contenu à l'intérieur d'accolades
Hello,
Pour enlever les accolades et leur contenu ainsi que les parenthèses et leur contenu :
Soit le fichier chess.pgn donné en 1 ligne au #1 :
sed -e 's/{[^}]*}\|([^)]*)//g' chess.pgn
Résultat :
1. d4 1... Nf6 2. c4 2... e6 3. Nc3 3... Bb4 4. a3 4... Bxc3+ 5. bxc3 5... b6 6. f3 6... Ba6 7. e4 7... Nc6 8. Bd3 8... Na5 9. Qe2 9... O-O 10. e5 10... Ne8 11. Nh3 11... Qh4+ 12. Kf1 12... f6 13. Bf4 13... fxe5 14. Bg5 14... Qh5 15. dxe5 15... Kh8 16. Qe4 16... Nb3 17. Qxa8 17... Nxa1 18. Be7 18... Rg8 19. Qxa7 19... Qxe5 20. Qxa6 20... Qxc3 21. c5 21... Qc1+ 22. Kf2 22... Qxh1 23. cxb6 23... cxb6 24. Ng5 24... g6 25. Qxb6 25... Qxh2 26. Qd4+ 26... e5 27. Qxa1 27... h6 28. Nf7+ 28... Kg7 29. Nxe5 29... Kh7 30. Ng4 30... Qf4 31. Qe5 31... Qd2+ 32. Qe2 32... Qxe2+ 33. Kxe2 33... Nc7 34. Ne5 34... Nd5 35. Bf6 35... Nf4+ 36. Ke3 36... Nxd3
Pour l'explication, c'est la même que Watael, je n'ai fait qu'appliquer une deuxième fois le motif mais pour des parenthèses.
Le savoir n'a d’intérêt que si on le transmet.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !
Hors ligne
#11 Le 20/09/2022, à 16:00
- Vobul
Re : Supprimer du contenu à l'intérieur d'accolades
@watael: ah oui j'avais mal lu l'énoncé
Vobul
Utilisez le retour utilisable de commandes !!!
J'aime la langue française, mais je parle franglais, deal with it.
RTFM
Hors ligne