.NET幫助 C#字符串方法(對開發者來說是如何工作的) Jacob Mellor 更新:6月 22, 2025 下載 IronPDF NuGet 下載 DLL 下載 Windows 安裝程式 開始免費試用 法學碩士副本 法學碩士副本 將頁面複製為 Markdown 格式,用於 LLMs 在 ChatGPT 中打開 請向 ChatGPT 諮詢此頁面 在雙子座打開 請向 Gemini 詢問此頁面 在雙子座打開 請向 Gemini 詢問此頁面 打開困惑 向 Perplexity 詢問有關此頁面的信息 分享 在 Facebook 上分享 分享到 X(Twitter) 在 LinkedIn 上分享 複製連結 電子郵件文章 在 C# 中處理 PDF 不僅涉及內容的渲染和格式化,還涉及文本的操作以滿足您的需求。 無論您是在 PDF 中抽取、搜尋或編輯文字,瞭解如何利用 C# 字串方法,都能大幅提升您的工作流程。 在本文中,我們將探討常見的 C# 字串操作、它們如何應用於 IronPDF 以及您如何使用它們來簡化 PDF 處理任務。 使用 IronPDF 的字串方法簡介。 C# 提供了多種字串方法,讓您能以多樣化的方式處理文字。 從基本操作(如連結和替換)到進階技術(如正規表達式),這些方法在處理 PDF 內容時是不可或缺的。 IronPDF 是用 C# 處理 PDF 的強大函式庫,可與這些字串函式無縫整合,為開發人員提供處理 PDF 內容的彈性工具集。 無論您需要提取文字、搜尋模式或處理內容,瞭解如何使用 IronPDF 的 C# 字串方法將有助於您達成目標。 IronPDF:功能強大的 C# PDF 函式庫。 IronPDF 是適用於 .NET 的強大 PDF 函式庫,專為簡化 PDF 的建立、操作和自動化而設計。 無論您需要生成動態文件,還是提取和編輯內容,IronPDF 都能提供功能豐富的無縫解決方案。 主要功能 HTML 至 PDF 轉換:輕鬆地將 HTML 內容轉換為完全風格化的 PDF。 文字萃取:從現有的 PDF 中提取和處理文字。 PDF 編輯:在 PDF 中加入 文字、影像,以及 註釋,或更新現有內容。 數位簽章:將安全的 數位簽名新增至 PDF。 PDF/A Compliance:確保您的 PDF 符合嚴格的 歸檔標準。 跨平台支援:適用於 Windows、Linux 和 macOS 上的 .NET Framework、.NET Core 和 .NET 5/6。 IronPDF 提供全面的工具套件,可輕鬆有效地處理您所有的 PDF 需求。 立即透過 免費試用開始探索其強大的功能,看看 IronPDF 如何簡化您的 PDF 工作流程! C# 中的基本字串操作; 彙編 在處理字串時,串連是最簡單的操作之一。 在 C# 中,有多種方法可以將兩個或多個字串連接在一起,其中最常見的方法是 + 運算符和 String.Concat()。 string text1 = "Hello"; string text2 = "World"; string result = text1 + " " + text2; // Output: "Hello World" string text1 = "Hello"; string text2 = "World"; string result = text1 + " " + text2; // Output: "Hello World" Dim text1 As String = "Hello" Dim text2 As String = "World" Dim result As String = text1 & " " & text2 ' Output: "Hello World" $vbLabelText $csharpLabel 在使用 IronPDF 工作時,您可能需要串連字串以建立完整的文件,或處理擷取內容中的文字。 例如,在套用格式化之前,您可以將 PDF 文件的標頭和正文合併為字串: var pdfText = "Header: " + extractedHeader + "\n" + "Body: " + extractedBody; var pdfText = "Header: " + extractedHeader + "\n" + "Body: " + extractedBody; Imports Microsoft.VisualBasic Dim pdfText = "Header: " & extractedHeader & vbLf & "Body: " & extractedBody $vbLabelText $csharpLabel 這展示了簡單的字串串接如何將指定的子串合併成一個有凝聚力的區塊。 稍後我們會看到,這種串接字串可用於建立 PDF 的動態內容。 PDF輸出: PDF 輸出字串 當使用 IronPdf 建立新文件時,文字串的指定索引位置將是決定頁首或正文等元素在頁面上出現位置的關鍵。 如此一來,目前的字串物件就能直接影響排版決策。 PDF 中的文字格式 一旦您擷取並處理了文字,您可能需要先將其格式化,再將其新增至 PDF。 IronPDF 允許您使用 RenderHtmlAsPdf 轉換功能設定字型樣式、大小,甚至定位,其中 C# 字串方法可協助您動態產生格式化內容。 例如,您可以使用 HTML 標籤串接字串來建立動態標頭和正文內容: string htmlContent = "<h1>" + headerText + "</h1>" + "<p>" + bodyText + "</p>"; string htmlContent = "<h1>" + headerText + "</h1>" + "<p>" + bodyText + "</p>"; Dim htmlContent As String = "<h1>" & headerText & "</h1>" & "<p>" & bodyText & "</p>" $vbLabelText $csharpLabel 然後可以使用 IronPDF 將這些 HTML 內容轉換成格式良好的 PDF: PdfDocument pdf = HtmlToPdf.ConvertHtmlString(htmlContent); pdf.SaveAs("formattedDocument.pdf"); PdfDocument pdf = HtmlToPdf.ConvertHtmlString(htmlContent); pdf.SaveAs("formattedDocument.pdf"); Dim pdf As PdfDocument = HtmlToPdf.ConvertHtmlString(htmlContent) pdf.SaveAs("formattedDocument.pdf") $vbLabelText $csharpLabel PDF輸出: 此方法可讓您輕鬆產生動態內容的 PDF,同時確保正確的文字格式。 透過動態內容產生新的字串,您可以將格式化的 HTML 內容字串陣列傳送至 IronPdf,確保 PDF 輸出符合您的需求。 搜尋指定的子串 在許多情況下,您需要檢查字串是否包含指定的子串。 Contains() 方法在這方面非常有用,因為它會根據指定字串是否存在於目標字串中,返回 true 或 false 。 string documentText = "Invoice Number: 12345"; bool containsInvoiceNumber = documentText.Contains("Invoice Number"); string documentText = "Invoice Number: 12345"; bool containsInvoiceNumber = documentText.Contains("Invoice Number"); Dim documentText As String = "Invoice Number: 12345" Dim containsInvoiceNumber As Boolean = documentText.Contains("Invoice Number") $vbLabelText $csharpLabel 尋找字元的指定位置 若要在字串中找出指定的字元,IndexOf() 方法特別有用。 它會返回字元或子字串在字串中首次出現的指定位置。 string str = "Invoice Number: 12345"; int position = str.IndexOf('5'); // Returns the position of the first '5' string str = "Invoice Number: 12345"; int position = str.IndexOf('5'); // Returns the position of the first '5' Dim str As String = "Invoice Number: 12345" Dim position As Integer = str.IndexOf("5"c) ' Returns the position of the first '5' $vbLabelText $csharpLabel 當使用 IronPDF 從 PDF 內的文字中抽取動態資料(如數字或日期)時,這會非常方便。 PDF 自動化的進階字串技術 常規表達式 對於更複雜的文字擷取,正規表示式 (Regex) 提供了強大的模式匹配工具。 使用 Regex,您可以從 PDF 中的非結構化文字中抽取結構化資料,例如日期、發票號碼,甚至是電子郵件地址。 using System.Text.RegularExpressions; string text = "Date: 02/11/2025"; Match match = Regex.Match(text, @"\d{2}/\d{2}/\d{4}"); if (match.Success) { string date = match.Value; // Output: "02/11/2025" } using System.Text.RegularExpressions; string text = "Date: 02/11/2025"; Match match = Regex.Match(text, @"\d{2}/\d{2}/\d{4}"); if (match.Success) { string date = match.Value; // Output: "02/11/2025" } Imports System.Text.RegularExpressions Private text As String = "Date: 02/11/2025" Private match As Match = Regex.Match(text, "\d{2}/\d{2}/\d{4}") If match.Success Then Dim [date] As String = match.Value ' Output: "02/11/2025" End If $vbLabelText $csharpLabel 正則表達式對於內容多變的文件或您需要擷取的特定格式特別有用。 使用 IronPdf 提取原始文字與正則表達式結合,有助於表單處理、資料驗證和報告等工作的自動化。 StringBuilder 適用於大篇幅文字。 在處理大型文字區塊(例如多頁內容或資料驅動的報告)時,使用 StringBuilder 而非一般的字串串接會更有效率。 StringBuilder 已針對需要追加或修改大量文字而不需建立多個中間字串實體的情境進行最佳化。 StringBuilder sb = new StringBuilder(); sb.AppendLine("Header: " + headerText); sb.AppendLine("Content: " + bodyText); string finalText = sb.ToString(); StringBuilder sb = new StringBuilder(); sb.AppendLine("Header: " + headerText); sb.AppendLine("Content: " + bodyText); string finalText = sb.ToString(); Dim sb As New StringBuilder() sb.AppendLine("Header: " & headerText) sb.AppendLine("Content: " & bodyText) Dim finalText As String = sb.ToString() $vbLabelText $csharpLabel IronPDF 可處理大型 PDF 文件,在工作流程中整合 StringBuilder 可確保在 PDF 中產生或處理大型文字時有更好的效能。 檢查字串實例是否符合模式 Equals() 方法會檢查兩個字串實例是否匹配,這表示它們具有相同的值。 這對 PDF 內容的驗證或比較特別有用。 string str1 = "Invoice"; string str2 = "Invoice"; bool isMatch = str1.Equals(str2); // Returns true as both have the same value string str1 = "Invoice"; string str2 = "Invoice"; bool isMatch = str1.Equals(str2); // Returns true as both have the same value Dim str1 As String = "Invoice" Dim str2 As String = "Invoice" Dim isMatch As Boolean = str1.Equals(str2) ' Returns true as both have the same value $vbLabelText $csharpLabel 在 IronPDF 中,可以在比較擷取的文字以確保其符合所需的格式或數值時應用。 處理 Unicode 字元 在處理 PDF 中的文字時,您可能需要處理或檢查指定的 Unicode 字元。 IndexOf() 方法也可用於找出特定 unicode 字元在字串中的位置。 string unicodeStr = "Hello * World"; int unicodePosition = unicodeStr.IndexOf('*'); // Finds the position of the unicode character string unicodeStr = "Hello * World"; int unicodePosition = unicodeStr.IndexOf('*'); // Finds the position of the unicode character Dim unicodeStr As String = "Hello * World" Dim unicodePosition As Integer = unicodeStr.IndexOf("*"c) ' Finds the position of the unicode character $vbLabelText $csharpLabel PDF輸出 此外,在處理不同語言或符號的文字時,將字串轉換為 unicode 字元陣列會非常有用: char[] unicodeArray = "Hello * World".ToCharArray(); char[] unicodeArray = "Hello * World".ToCharArray(); Dim unicodeArray() As Char = "Hello * World".ToCharArray() $vbLabelText $csharpLabel 這樣可以更精確地操作字元,尤其是在處理不同語言或格式的 PDF 時。 子串萃取與操作 在處理字串時,另一個強大的功能是擷取指定子串的能力。 Substring() 方法可讓您選擇字串中從指定索引位置開始的部分。 這對於從 PDF 內容中擷取有意義的資料至關重要。 string sentence = "Total: $45.00"; string totalAmount = sentence.Substring(7); // Extracts "$45.00" string sentence = "Total: $45.00"; string totalAmount = sentence.Substring(7); // Extracts "$45.00" Dim sentence As String = "Total: $45.00" Dim totalAmount As String = sentence.Substring(7) ' Extracts "$45.00" $vbLabelText $csharpLabel 此技術在處理 PDF 中的發票或任何形式的結構化文字時非常有用。 使用 C# 字串方法生成 PDF。 讓我們把所有東西放在一起,看看一個更全面的範例,說明如何使用 C# 字串方法來使用 IronPDF 產生 PDF。 本範例將示範如何擷取文字、使用字串方法處理文字,然後產生格式化的 PDF。 範例:建立自訂發票 PDF 試想一下,我們需要動態產生 PDF 格式的發票,擷取客戶姓名、地址和所購商品等資訊。 在產生最終 PDF 之前,我們會使用各種字串方法來格式化和處理資料。 using IronPdf; using System; using System.Text; class Program { static void Main() { // Sample customer data string customerName = "John Doe"; string customerAddress = "123 Main Street, Springfield, IL 62701"; string[] purchasedItems = { "Item 1 - $10.00", "Item 2 - $20.00", "Item 3 - $30.00" }; // Start building the HTML content for the invoice StringBuilder invoiceContent = new StringBuilder(); // Adding the header invoiceContent.AppendLine("<h1>Invoice</h1>"); invoiceContent.AppendLine("<h2>Customer Details</h2>"); invoiceContent.AppendLine("<p><strong>Name:</strong> " + customerName + "</p>"); invoiceContent.AppendLine("<p><strong>Address:</strong> " + customerAddress + "</p>"); // Adding the list of purchased items invoiceContent.AppendLine("<h3>Items Purchased</h3>"); invoiceContent.AppendLine("<ul>"); foreach (var item in purchasedItems) { invoiceContent.AppendLine("<li>" + item + "</li>"); } invoiceContent.AppendLine("</ul>"); // Calculate total cost (basic manipulation with string methods) double totalCost = 0; foreach (var item in purchasedItems) { string priceString = item.Substring(item.LastIndexOf('$') + 1); double price = Convert.ToDouble(priceString); totalCost += price; } // Adding total cost invoiceContent.AppendLine("<p><strong>Total Cost:</strong> $" + totalCost.ToString("F2") + "</p>"); // Convert the HTML to PDF using IronPDF var pdf = HtmlToPdf.ConvertHtmlString(invoiceContent.ToString()); // Save the generated PDF pdf.SaveAs("Invoice_Johndoe.pdf"); Console.WriteLine("Invoice PDF generated successfully."); } } using IronPdf; using System; using System.Text; class Program { static void Main() { // Sample customer data string customerName = "John Doe"; string customerAddress = "123 Main Street, Springfield, IL 62701"; string[] purchasedItems = { "Item 1 - $10.00", "Item 2 - $20.00", "Item 3 - $30.00" }; // Start building the HTML content for the invoice StringBuilder invoiceContent = new StringBuilder(); // Adding the header invoiceContent.AppendLine("<h1>Invoice</h1>"); invoiceContent.AppendLine("<h2>Customer Details</h2>"); invoiceContent.AppendLine("<p><strong>Name:</strong> " + customerName + "</p>"); invoiceContent.AppendLine("<p><strong>Address:</strong> " + customerAddress + "</p>"); // Adding the list of purchased items invoiceContent.AppendLine("<h3>Items Purchased</h3>"); invoiceContent.AppendLine("<ul>"); foreach (var item in purchasedItems) { invoiceContent.AppendLine("<li>" + item + "</li>"); } invoiceContent.AppendLine("</ul>"); // Calculate total cost (basic manipulation with string methods) double totalCost = 0; foreach (var item in purchasedItems) { string priceString = item.Substring(item.LastIndexOf('$') + 1); double price = Convert.ToDouble(priceString); totalCost += price; } // Adding total cost invoiceContent.AppendLine("<p><strong>Total Cost:</strong> $" + totalCost.ToString("F2") + "</p>"); // Convert the HTML to PDF using IronPDF var pdf = HtmlToPdf.ConvertHtmlString(invoiceContent.ToString()); // Save the generated PDF pdf.SaveAs("Invoice_Johndoe.pdf"); Console.WriteLine("Invoice PDF generated successfully."); } } Imports IronPdf Imports System Imports System.Text Friend Class Program Shared Sub Main() ' Sample customer data Dim customerName As String = "John Doe" Dim customerAddress As String = "123 Main Street, Springfield, IL 62701" Dim purchasedItems() As String = { "Item 1 - $10.00", "Item 2 - $20.00", "Item 3 - $30.00" } ' Start building the HTML content for the invoice Dim invoiceContent As New StringBuilder() ' Adding the header invoiceContent.AppendLine("<h1>Invoice</h1>") invoiceContent.AppendLine("<h2>Customer Details</h2>") invoiceContent.AppendLine("<p><strong>Name:</strong> " & customerName & "</p>") invoiceContent.AppendLine("<p><strong>Address:</strong> " & customerAddress & "</p>") ' Adding the list of purchased items invoiceContent.AppendLine("<h3>Items Purchased</h3>") invoiceContent.AppendLine("<ul>") For Each item In purchasedItems invoiceContent.AppendLine("<li>" & item & "</li>") Next item invoiceContent.AppendLine("</ul>") ' Calculate total cost (basic manipulation with string methods) Dim totalCost As Double = 0 For Each item In purchasedItems Dim priceString As String = item.Substring(item.LastIndexOf("$"c) + 1) Dim price As Double = Convert.ToDouble(priceString) totalCost += price Next item ' Adding total cost invoiceContent.AppendLine("<p><strong>Total Cost:</strong> $" & totalCost.ToString("F2") & "</p>") ' Convert the HTML to PDF using IronPDF Dim pdf = HtmlToPdf.ConvertHtmlString(invoiceContent.ToString()) ' Save the generated PDF pdf.SaveAs("Invoice_Johndoe.pdf") Console.WriteLine("Invoice PDF generated successfully.") End Sub End Class $vbLabelText $csharpLabel 說明 資料設定:我們從樣本客戶資料開始,包括客戶姓名、地址和購買物品清單。 StringBuilder:我們使用 StringBuilder 來建立發票的 HTML 內容。這可讓我們有效率地附加內容的每一部分 (標頭、客戶詳細資料、已購物品清單和總成本),而無須建立多個中間 String 實例。 字串操作: 對於每個項目,我們會擷取價格 (在 $ 符號之後) 並計算總成本。我們使用 Substring() 取得 指定的子串,並使用 Convert.ToDouble() 將其轉換為數值。 然後將總成本格式化至小數點後兩位,以達到乾淨且專業的顯示效果。 HTML 至 PDF 轉換:在建立 HTML 格式的發票內容後,我們使用 IronPDF 的 RenderHtmlAsPdf() 方法來產生 PDF。 結果儲存為 Invoice_Johndoe.pdf。 透過 IronPDF 強大的 HTML 至 PDF 轉換功能,並結合 C# 字串處理技術,您可以自動化建立動態文件,不論是發票、報告或合約。 PDF 輸出。 結論 在使用 IronPDF 時,掌握 C# 字串方法可以簡化您的 PDF 處理任務,無論是提取、編輯或格式化內容。 利用字串串接、子串抽取和正則表達式等技術,您可以完全控制 PDF 中的文字,實現更動態、更有效率的工作流程。 IronPDF提供強大的 PDF 操作功能,可與 C# 字串方法無縫配合。 無論您是處理文字萃取、搜尋模式或自動化內容產生,結合 IronPDF 與 C# 字串運算都能為您省時省力。 想瞭解 IronPDF 如何幫助您實現 PDF 自動化? 立即試用 免費試用版,發掘其全部潛力! 常見問題解答 如何用 C# 從 PDF 擷取文字? 要使用 C# 從 PDF 中提取文字,您可以使用 IronPDF 的文字提取功能。利用 extractText() 等方法,您可以輕鬆地從 PDF 文件中擷取文字資料,以便進一步處理或分析。 在 PDF 自動化中使用 C# 字串方法的最佳做法是什麼? 對於 PDF 自動化,最佳實務包括使用 C# 字串方法,如 Substring() 進行文字萃取、使用正規表達式進行模式匹配,以及在處理大型文件時使用 StringBuilder 進行有效的文字處理。這些技術與 IronPDF 相結合,可以增強自動化任務,例如表單處理和資料驗證。 C# 字串操作如何改善 PDF 內容操作? C# 字串操作(如串聯、替換和搜尋)可顯著改善 PDF 內容的操作。透過將這些操作與 IronPDF 整合,開發人員可以更有效率地格式化、搜尋和修改 PDF 內的文字,實現動態內容生成和自動化文件處理。 IronPDF 是否可用於將 HTML 內容轉換為 PDF? 是的,IronPDF 提供了透過 RenderHtmlAsPdf 和 RenderHtmlFileAsPdf 等方法將 HTML 內容轉換為 PDF 的功能。這可讓開發人員輕鬆地將網頁內容或 HTML 字串轉換成專業的 PDF 文件。 正則表達式如何增強 PDF 文本操作? 正規表達式透過允許開發人員執行複雜的模式匹配和資料擷取,增強了 PDF 文本操作。結合 IronPDF,正規表達式可用於從非結構化的 PDF 文字中萃取特定資料,例如日期或發票號碼。 為什麼 StringBuilder 是處理大型 PDF 文字內容的首選? StringBuilder 是處理大型 PDF 文字內容的首選,因為它在追加或修改文字時提供有效的記憶體管理和更快的效能。這使得它非常適合需要在 PDF 中處理或產生大量文字的情況。 使用 IronPDF 進行跨平台 PDF 操作有哪些優勢? IronPDF for .NET 支援 Windows、Linux 和 macOS 的 .NET Framework、.NET Core 和 .NET 5/6,提供跨平台的 PDF 操作。這種靈活性可確保開發人員使用 IronPDF 在不同的環境中建立、編輯和管理 PDF,而不會產生相容性問題。 如何使用 C# 字串方法自動生成 PDF? 您可以使用 C# 字串方法(如串聯和格式化)建構文件內容,從而自動生成 PDF。一旦內容準備為 HTML 字串,IronPDF 就能將其轉換為 PDF,簡化文件製作流程。 C# 字串方法在動態 PDF 文件建立中扮演什麼角色? C# 字串方法通過實現文本格式化、資料操作和內容組織,在動態 PDF 文檔創建中發揮了關鍵作用。與 IronPDF 搭配使用時,這些方法可讓開發人員快速有效地產生自訂的動態 PDF 文件。 C# 字串方法如何促進 PDF 中的文件編輯? C# 字串方法透過提供文字搜尋、取代和修改的工具,促進 PDF 中的文件編輯。IronPDF 利用這些字串功能,讓開發人員可以無縫編輯和更新 PDF 中的文字內容,強化文件管理工作流程。 Jacob Mellor 立即與工程團隊聊天 首席技术官 Jacob Mellor 是 Iron Software 的首席技術官,作為 C# PDF 技術的先鋒工程師。作為 Iron Software 核心代碼的原作者,他自開始以來塑造了公司產品架構,與 CEO Cameron Rimington 一起將其轉變為一家擁有超過 50 名員工的公司,為 NASA、特斯拉 和 全世界政府機構服務。Jacob 持有曼徹斯特大學土木工程一級榮譽学士工程學位(BEng) (1998-2001)。他於 1999 年在倫敦開設了他的第一家軟件公司,並於 2005 年製作了他的首個 .NET 組件,專注於解決 Microsoft 生態系統內的複雜問題。他的旗艦產品 IronPDF & Iron Suite .NET 庫在全球 NuGet 被安裝超過 3000 萬次,其基礎代碼繼續為世界各地的開發工具提供動力。擁有 25 年的商業經驗和 41 年的編碼專業知識,Jacob 仍專注於推動企業級 C#、Java 及 Python PDF 技術的創新,同時指導新一代技術領袖。 相關文章 更新12月 11, 2025 銜接 CLI 簡化與 .NET : 使用 Curl DotNet 與 IronPDF for .NET Jacob Mellor 藉由 CurlDotNet 彌補了這方面的不足,CurlDotNet 是為了讓 .NET 生態系統能熟悉 cURL 而建立的函式庫。 閱讀更多 更新9月 4, 2025 RandomNumberGenerator C# 使用RandomNumberGenerator C#類可以幫助將您的PDF生成和編輯項目提升至新水準 閱讀更多 更新9月 4, 2025 C#字符串等於(它如何對開發者起作用) 當結合使用強大的PDF庫IronPDF時,開關模式匹配可以讓您構建更智能、更清晰的邏輯來進行文檔處理 閱讀更多 C#互鎖(它如何對開發者起作用)HTML美化器(開發者如何執行)
更新12月 11, 2025 銜接 CLI 簡化與 .NET : 使用 Curl DotNet 與 IronPDF for .NET Jacob Mellor 藉由 CurlDotNet 彌補了這方面的不足,CurlDotNet 是為了讓 .NET 生態系統能熟悉 cURL 而建立的函式庫。 閱讀更多