ホームページ バックエンド開発 C#.Net チュートリアル Perlで混合文字列をソートするにはどうすればよいですか? (コード例)

Perlで混合文字列をソートするにはどうすればよいですか? (コード例)

Apr 16, 2019 am 11:40 AM
perl 選別 正規表現

Perl での並べ替えは、事前定義された関数「sort」を使用して実行できます。この関数は、クイックソート アルゴリズムを使用して、渡された配列を並べ替えます。次の記事では、sort() 関数を使用して、混合形式の文字列 (つまり、英数字の文字列) を含む配列をさまざまな方法で並べ替える方法を紹介します。 [ビデオチュートリアルの推奨: Perl チュートリアル]

Perlで混合文字列をソートするにはどうすればよいですか? (コード例)

方法 1: sort() substr() 関数

数値を使用して文字列を比較するには、文字列から数値を取得することが非常に重要です。これらの数値に基づいて文字列配列を並べ替えることができます。

substr() 関数を使用すると、文字列からこれらの数値を抽出できます。この関数は、文字列内の数字を除いた文字数を引数として受け取ります。

注: 配列内のすべての英数字文字列は同じサイズである必要があります。

例:

use strict; 
use 5.010; 
  
# 用字母数字字符串定义数组值
my @x = qw(prin_4 Keys_8 pubg_12); 
print "原数组:\n";
print join " , ", @x;  
# 使用sort()和substr()函数对数组进行排序 
my @y = sort { substr($a, 5) <=> substr($b, 5) } @x; 
  
# 输出排序的数组
print "\n\n排序的数组:\n";
print join " , ", @y;
ログイン後にコピー

出力:

原数组:
prin_4 , Keys_8 , pubg_12

排序的数组:
prin_4 , Keys_8 , pubg_12
ログイン後にコピー

方法 2: sort() 正規表現

英数字の文字列が少し複雑な場合、上記のコードを実行するのは難しいため、正規表現を使用して簡単にすることができます。

例: 配列に「Keys_8_keys」が含まれている場合、このケースを処理するのは難しいため、文字列内の数値を正しくフィルターするには、正規表現を使用できます。

注: このメソッドでは、英数字文字列のサイズが異なるかどうかは関係ありません。

例:

use strict; 
use 5.010; 
  
# Sample string to extract  
# number from 
my $str = &#39;Key_8_key&#39;; 
  
# Regular expression to extract the number 
my ($number) = $str =~ /(\d+)/; 
  
# 输出提取的数字
print "从Key_8_key中提取的数字是:$number\n"; 
  
# 用字母数字字符串定义数组
my @x = qw(pri_4 Key_8_key pubg_12); 
  
# 排序前的数组
print "\n排序前的数组:\n"; 
print join " , ", sort @x; 
  
# 使用正则表达式
my @y = sort { ($a =~ /(\d+)/)[0] <=> ($b =~ /(\d+)/)[0] } @x; 
  
# 排序后数组
print "\n\n排序后数组\n"; 
print join " , ", @y;
ログイン後にコピー

出力:

从Key_8_key中提取的数字是:8
排序前的数组:
Key_8_key , pri_4 , pubg_12
排序后数组
pri_4 , Key_8_key , pubg_12
ログイン後にコピー

注: 配列に数値が含まれていない文字列が含まれている場合、この数値の代わりに 0 を使用できます。文字列に数字が含まれていないことを確認するには、次のコードを使用します。

my @y = sort { (($a =~ /(\d+)/)[0] || 0)  (($b =~ /(\d+)/)[0] || 0) } @x;
ログイン後にコピー

Example:

#!/usr/bin/perl 
use strict; 
use 5.010; 
  
# 混合类型字符串的数组
my @x = qw(pri_4 Key pubg_12); 
  
# 使用正则表达式
my @y = sort { (($a =~ /(\d+)/)[0] || 0) <=>  
               (($b =~ /(\d+)/)[0] || 0) } @x; 
   
# 输出排序的数组
print "排序后数组:\n"; 
print join " , ", @y;
ログイン後にコピー

Output:

排序后数组:
Key , pri_4 , pubg_12
ログイン後にコピー

上記は、この記事の内容全体です。 、皆さんの勉強のお役に立てれば幸いです。さらにエキサイティングなコンテンツについては、PHP 中国語 Web サイトの関連チュートリアルのコラムに注目してください。 ! !

以上がPerlで混合文字列をソートするにはどうすればよいですか? (コード例)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Windows 11/10で写真を撮影日ごとに並べ替える方法 Windows 11/10で写真を撮影日ごとに並べ替える方法 Feb 19, 2024 pm 08:45 PM

この記事では、Windows 11/10 で写真を撮影日順に並べ替える方法を紹介し、Windows で写真が日付順に並べ替えられない場合の対処法についても説明します。 Windows システムでは、画像ファイルを見つけやすくするために、写真を適切に整理することが重要です。ユーザーは、日付、サイズ、名前などのさまざまな並べ替え方法に基づいて写真を含むフォルダーを管理できます。さらに、必要に応じて昇順または降順を設定して、ファイルをより柔軟に整理できます。 Windows 11/10 で写真を撮影日で並べ替える方法 Windows で写真を撮影日で並べ替えるには、次の手順に従います。 [ピクチャ]、デスクトップ、または写真を配置する任意のフォルダを開きます。 リボン メニューで、

Outlook でメールを送信者、件名、日付、カテゴリ、サイズで並べ替える方法 Outlook でメールを送信者、件名、日付、カテゴリ、サイズで並べ替える方法 Feb 19, 2024 am 10:48 AM

Outlook には、作業をより効率的に管理するための多くの設定と機能が用意されています。その 1 つは、ニーズに応じてメールを分類できる並べ替えオプションです。このチュートリアルでは、Outlook の並べ替え機能を使用して、送信者、件名、日付、カテゴリ、サイズなどの基準に基づいてメールを整理する方法を学習します。これにより、重要な情報の処理と検索が容易になり、生産性が向上します。 Microsoft Outlook は、電子メールやカレンダーのスケジュールを簡単に一元管理できる強力なアプリケーションです。電子メールの送受信、整理が簡単にできるほか、内蔵のカレンダー機能により今後のイベントや予定を簡単に追跡できます。 Outlo の使い方

PHP 正規表現の検証: 数値形式の検出 PHP 正規表現の検証: 数値形式の検出 Mar 21, 2024 am 09:45 AM

PHP 正規表現の検証: 数値形式の検出 PHP プログラムを作成する場合、ユーザーが入力したデータを検証する必要がよくあります。一般的な検証の 1 つは、データが指定された数値形式に準拠しているかどうかを確認することです。 PHP では、正規表現を使用してこの種の検証を行うことができます。この記事では、PHP 正規表現を使用して数値形式を検証する方法を紹介し、具体的なコード例を示します。まず、一般的な数値形式の検証要件を見てみましょう。 整数: 0 ~ 9 の数字のみが含まれ、プラスまたはマイナス記号で始めることができ、小数点は含まれません。浮動小数点

正規表現を使用して Golang でメールアドレスを検証するにはどうすればよいですか? 正規表現を使用して Golang でメールアドレスを検証するにはどうすればよいですか? May 31, 2024 pm 01:04 PM

正規表現を使用して Golang で電子メール アドレスを検証するには、次の手順に従います。 regexp.MustCompile を使用して、有効な電子メール アドレス形式と一致する正規表現パターンを作成します。 MatchString 関数を使用して、文字列がパターンと一致するかどうかを確認します。このパターンは、次のようなほとんどの有効な電子メール アドレス形式をカバーします。 ローカル ユーザー名には文字、数字、および特殊文字を含めることができます: !.#$%&'*+/=?^_{|}~-` ドメイン名には少なくとも次の文字が含まれている必要があります。 1 文字の後に文字、数字、またはハイフンを続けます。トップレベル ドメイン (TLD) は 63 文字を超えることはできません。

WPS スコアを並べ替える方法 WPS スコアを並べ替える方法 Mar 20, 2024 am 11:28 AM

私たちの仕事では、wps ソフトウェアをよく使用します。wps ソフトウェアではデータを処理する方法がたくさんあり、機能も非常に強力です。平均値や要約などを求める関数をよく使用します。統計データに使用できるメソッドは、WPS ソフトウェア ライブラリで誰でも利用できるように用意されています。以下では、WPS でスコアをソートする手順を紹介します。これを読んだ後、経験から学ぶことができます。 1. まず、ランク付けする必要があるテーブルを開きます。以下に示すように。 2. 次に、数式 =rank(B2, B2: B5, 0) を入力します。必ず 0 を入力してください。以下に示すように。 3. 数式を入力した後、コンピュータのキーボードの F4 キーを押すと、相対参照が絶対参照に変更されます。

Go で正規表現を使用してタイムスタンプを照合するにはどうすればよいですか? Go で正規表現を使用してタイムスタンプを照合するにはどうすればよいですか? Jun 02, 2024 am 09:00 AM

Go では、正規表現を使用してタイムスタンプを照合できます。ISO8601 タイムスタンプの照合に使用されるような正規表現文字列をコンパイルします。 ^\d{4}-\d{2}-\d{2}T \d{ 2}:\d{2}:\d{2}(\.\d+)?(Z|[+-][0-9]{2}:[0-9]{2})$ 。 regexp.MatchString 関数を使用して、文字列が正規表現と一致するかどうかを確認します。

データ統計を容易にするために WPS テーブルをソートする方法 データ統計を容易にするために WPS テーブルをソートする方法 Mar 20, 2024 pm 04:31 PM

WPS は、テキスト編集、データ テーブル、PPT プレゼンテーション、PDF 形式、フローチャート、その他の機能を含む、非常に完成度の高いオフィス ソフトウェアです。その中でも私たちがよく使うのはテキスト、表、デモであり、私たちにとって最も馴染みのあるものでもあります。私たちの研究では、データ統計を作成するために WPS テーブルを使用することがあります。たとえば、学校は各生徒の得点を数えます。非常に多くの生徒の得点を手動で並べ替える必要がある場合、本当に頭の痛い作業になります。実際、WPS テーブルにはこの問題を解決する並べ替え機能があるため、心配する必要はありません。次に、WPS を並べ替える方法を一緒に学びましょう。方法のステップ: ステップ 1: まず、並べ替える必要がある WPS テーブルを開く必要があります。

エクセルで並べ替える方法 エクセルで並べ替える方法 Mar 05, 2024 pm 04:12 PM

Excel での並べ替え方法: 1. 単一列の並べ替え; 2. 複数列の並べ替え; 3. カスタム並べ替え。詳細な紹介: 1. 単一列の並べ替えは、最も一般的な並べ替え方法です。選択した列に従って並べ替えられます。2. 複数列の並べ替えは、複数の列でデータを並べ替えることを指します。通常は、最初に特定の列に従って並べ替えられます。 of、別の列で並べ替える; 3. カスタム並べ替え、ユーザーが独自のニーズに応じて並べ替え順序を定義できるようにします。

See all articles