|
74 | 74 | } |
75 | 75 | ], |
76 | 76 | "source": [ |
77 | | - "file_list = ['dev_counter.txt', 'dev_reset.txt', 'shm_counter.txt', 'dev_start.txt']\n", |
| 77 | + "file_list = ['dev_counter.txt', 'dev_reset.txt', 'dev_05.jpg',\n", |
| 78 | + " 'shm_counter.txt', 'dev_start.txt']\n", |
78 | 79 | "for file_name in file_list:\n", |
79 | 80 | " if re.match(r'dev_.*\\.txt', file_name):\n", |
80 | 81 | " print(file_name)" |
|
108 | 109 | } |
109 | 110 | ], |
110 | 111 | "source": [ |
111 | | - "file_list = ['exp_01.txt', 'exp.txt', 'exp_02.dat', 'exp.dat', 'exp05.dat', 'exp_03.jpg']\n", |
| 112 | + "file_list = ['exp_01.txt', 'exp.txt', 'exp_02.dat',\n", |
| 113 | + " 'exp.dat', 'exp05.dat', 'exp_03.jpg']\n", |
112 | 114 | "for file_name in file_list:\n", |
113 | 115 | " if re.search(r'\\d+\\.(?:txt|dat)', file_name):\n", |
114 | 116 | " print(file_name)" |
|
221 | 223 | } |
222 | 224 | ], |
223 | 225 | "source": [ |
224 | | - "file_list = ['exp_01.dat', 'meta.txt', 'exp_02.dat', 'exp_10.dat', 'exp_05.dat', 'exp_03.jpg']\n", |
| 226 | + "file_list = ['exp_01.dat', 'meta.txt', 'exp_02.dat',\n", |
| 227 | + " 'exp_10.dat', 'exp_05.dat', 'exp_03.jpg']\n", |
225 | 228 | "for file_name in file_list:\n", |
226 | 229 | " match = re.search(r'exp_(\\d+)\\.dat', file_name)\n", |
227 | 230 | " if match:\n", |
|
256 | 259 | "collapsed": false, |
257 | 260 | "jupyter": { |
258 | 261 | "outputs_hidden": false |
259 | | - } |
| 262 | + }, |
| 263 | + "tags": [] |
260 | 264 | }, |
261 | 265 | "outputs": [ |
262 | 266 | { |
|
271 | 275 | } |
272 | 276 | ], |
273 | 277 | "source": [ |
274 | | - "file_list = ['exp_01.dat', 'exp_03.txt', 'exp_02.dat', 'exp_10.text']\n", |
| 278 | + "file_list = ['exp_01.dat', 'exp_03.txt', 'exp_02.dat',\n", |
| 279 | + " 'exp_10.text']\n", |
275 | 280 | "for file_name in file_list:\n", |
276 | 281 | " new_file_name = re.sub(r'\\.\\w+$', '.txt', file_name)\n", |
277 | | - " print('{old:15s} -> {new}'.format(old=file_name, new=new_file_name))" |
| 282 | + " print(f'{file_name:15s} -> {new_file_name}')" |
278 | 283 | ] |
279 | 284 | }, |
280 | 285 | { |
|
291 | 296 | "collapsed": false, |
292 | 297 | "jupyter": { |
293 | 298 | "outputs_hidden": false |
294 | | - } |
| 299 | + }, |
| 300 | + "tags": [] |
295 | 301 | }, |
296 | 302 | "outputs": [ |
297 | 303 | { |
|
306 | 312 | } |
307 | 313 | ], |
308 | 314 | "source": [ |
309 | | - "file_list = ['exp_01.dat', 'dev_03.txt', 'exp_02.txt', 'exp_10.text']\n", |
| 315 | + "file_list = ['exp_01.dat', 'dev_03.txt', 'exp_02.txt',\n", |
| 316 | + " 'exp_10.text']\n", |
310 | 317 | "for file_name in file_list:\n", |
311 | 318 | " new_file_name = re.sub(r'(\\w+)_(\\d+)\\.', r'\\2_\\1.', file_name)\n", |
312 | | - " print('{old:15s} -> {new}'.format(old=file_name, new=new_file_name))" |
| 319 | + " print(f'{file_name:15s} -> {new_file_name}')" |
313 | 320 | ] |
314 | 321 | }, |
315 | 322 | { |
|
339 | 346 | { |
340 | 347 | "cell_type": "code", |
341 | 348 | "execution_count": 9, |
342 | | - "metadata": {}, |
| 349 | + "metadata": { |
| 350 | + "tags": [] |
| 351 | + }, |
343 | 352 | "outputs": [], |
344 | 353 | "source": [ |
345 | 354 | "log_entry = '2021-08-25 17:04:23.439405 [info]: end process 1 exited with 2'" |
|
355 | 364 | { |
356 | 365 | "cell_type": "code", |
357 | 366 | "execution_count": 10, |
358 | | - "metadata": {}, |
| 367 | + "metadata": { |
| 368 | + "tags": [] |
| 369 | + }, |
359 | 370 | "outputs": [], |
360 | 371 | "source": [ |
361 | 372 | "date = r'\\d{4}-\\d{2}-\\d{2}'\n", |
|
372 | 383 | { |
373 | 384 | "cell_type": "code", |
374 | 385 | "execution_count": 11, |
375 | | - "metadata": {}, |
| 386 | + "metadata": { |
| 387 | + "tags": [] |
| 388 | + }, |
376 | 389 | "outputs": [ |
377 | 390 | { |
378 | 391 | "data": { |
|
400 | 413 | { |
401 | 414 | "cell_type": "code", |
402 | 415 | "execution_count": 12, |
403 | | - "metadata": {}, |
| 416 | + "metadata": { |
| 417 | + "tags": [] |
| 418 | + }, |
404 | 419 | "outputs": [ |
405 | 420 | { |
406 | 421 | "data": { |
|
422 | 437 | { |
423 | 438 | "cell_type": "code", |
424 | 439 | "execution_count": 13, |
425 | | - "metadata": {}, |
| 440 | + "metadata": { |
| 441 | + "tags": [] |
| 442 | + }, |
426 | 443 | "outputs": [], |
427 | 444 | "source": [ |
428 | 445 | "level = r'\\[(\\w+)\\]'\n", |
|
432 | 449 | { |
433 | 450 | "cell_type": "code", |
434 | 451 | "execution_count": 14, |
435 | | - "metadata": {}, |
| 452 | + "metadata": { |
| 453 | + "tags": [] |
| 454 | + }, |
436 | 455 | "outputs": [ |
437 | 456 | { |
438 | 457 | "name": "stdout", |
|
446 | 465 | } |
447 | 466 | ], |
448 | 467 | "source": [ |
449 | | - "regex = re.compile(r'({date}\\s+{time})\\s+{level}\\s*:\\s*{msg}'.format(date=date, time=time, level=level, msg=msg))\n", |
| 468 | + "regex = re.compile(rf'({date}\\s+{time})\\s+{level}\\s*:\\s*{msg}')\n", |
450 | 469 | "match = regex.match(log_entry)\n", |
451 | 470 | "print(f'datetime = {match.group(1)}')\n", |
452 | 471 | "print(f'log level: {match.group(2)}')\n", |
|
464 | 483 | { |
465 | 484 | "cell_type": "code", |
466 | 485 | "execution_count": 15, |
467 | | - "metadata": {}, |
| 486 | + "metadata": { |
| 487 | + "tags": [] |
| 488 | + }, |
468 | 489 | "outputs": [], |
469 | 490 | "source": [ |
470 | 491 | "regex_parts = {\n", |
|
573 | 594 | ], |
574 | 595 | "metadata": { |
575 | 596 | "kernelspec": { |
576 | | - "display_name": "Python 3", |
| 597 | + "display_name": "Python 3 (ipykernel)", |
577 | 598 | "language": "python", |
578 | 599 | "name": "python3" |
579 | 600 | }, |
|
587 | 608 | "name": "python", |
588 | 609 | "nbconvert_exporter": "python", |
589 | 610 | "pygments_lexer": "ipython3", |
590 | | - "version": "3.7.7" |
| 611 | + "version": "3.11.0" |
591 | 612 | } |
592 | 613 | }, |
593 | 614 | "nbformat": 4, |
|
0 commit comments