一個小問題的解決方案
文字格式:
111 222 33 [232 23 23] 34324 <234 234 234> 234 324
把所有的空格替換為tab
但是[] <>裡面的忽略,不替換。
[]<>的位置是隨機的。可能出現任意域,但整個文字的格式是固定的。
安樂的解法
use 5.010;
use strict;
my $string = "233323 <123> 32323[2323]";
my @all = split '',$string;
my $flag = 0;
foreach (@all){
if ($flag == 0 ){
$_ = "\t" if $_ eq ' ';
$flag = 1 if $_ eq '<';
$flag = 2 if $_ eq '[';
}elsif($flag == 1){
next if $_ ne '>';
$flag =0
}elsif($flag == 2){
next if $_ ne ']';
$flag =0
}else{
}
}
$string = join '',@all;
say @all;
我的解法:
use strict;
use warnings;
my $out_out = "result.txt";
open my $out, '>', $out_out or die "failed open$!\n";
my $in_in = "a.txt";
open my $in, '<', $in_in or die "cannot open\n";
while(<$in>)
{
chomp;
my $line=$_;
print $out "$line\n";
$line=~s/(<|\[)(\d+)\s+(\d+)\s+(\d+)(>|])/$1$2-$3-$4$5/g;
$line=~s/\s+/\t/g;
$line=~s/-/ /g;
print $out "$line\n";
}
close $in;
close $out;
相關文章
- 一個簡單的統計問題(解決方案:Trie樹)
- mysql8.0插入慢的問題解決方案(一)MySql
- 記錄一次解決App崩潰問題的解決方案APP
- CSS小問題與解決方案記錄(長期更新)CSS
- 跨域問題,解決方案 – CORS方案跨域CORS
- 一個小問題
- Mycat分片方案需要解決的問題
- 玩Deno遇到問題的解決方案
- 【API知識】ElementUI一些問題的解決方案APIUI
- 解決AI的小資料問題AI
- uniapp,小程式防止二次點選問題,解決方案APP
- Kafka常見的問題及解決方案Kafka
- 跨域問題及解決方案跨域
- HA腦裂問題解決方案
- SpringBoot跨域問題解決方案Spring Boot跨域
- 求解決 Laravel with () limit 的問題 附帶解決方案LaravelMIT
- 移動端相容性問題解決方案(一)
- MFC軟體國際化的幾個問題及其解決方案
- OkHttp框架的一個Http500問題解決HTTP框架
- 解決github中一個新手著名問題Github
- 解決小程式web-view兩個噁心問題WebView
- pyinstaller 生成 exe 的閃退問題解決方案
- 資源限制類問題的常用解決方案
- JS中toFixed()方法的問題及解決方案JS
- 前端跨域問題及其解決方案前端跨域
- WordPress:常見問題及解決方案
- Flutter Web 跨域問題解決方案FlutterWeb跨域
- vue許可權問題解決方案Vue
- nginx /Java 解決跨域問題方案NginxJava跨域
- Angular Component 延遲載入 Lazy Load 的一個依賴注入的問題以及解決方案Angular依賴注入
- pl/sql developer的一個小問題SQLDeveloper
- 一個nvcc編譯的小問題編譯
- AWS AutoScaling的一個ScaleDown策略問題以及解決方法
- 用Python解決一個等差數列的求和問題Python
- 記錄一個小問題
- 一個極限小問題
- 記錄一個 gitlab 登入問題解決Gitlab
- 一個案例,教你巧用DMAIC解決“大問題”!AI
- tkinter 元件 的 只能驗證一次的問題的的解決方案.元件