Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Regex / System / Text / RegularExpressions / RegexGroup.cs / 1305376 / RegexGroup.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- // Group represents the substring or substrings that // are captured by a single capturing group after one // regular expression match. namespace System.Text.RegularExpressions { using System.Security.Permissions; ////// Group /// represents the results from a single capturing group. A capturing group can /// capture zero, one, or more strings in a single match because of quantifiers, so /// Group supplies a collection of Capture objects. /// #if !SILVERLIGHT [ Serializable() ] #endif public class Group : Capture { // the empty group object internal static Group _emptygroup = new Group(String.Empty, new int[0], 0); internal int[] _caps; internal int _capcount; internal CaptureCollection _capcoll; internal Group(String text, int[] caps, int capcount) : base(text, capcount == 0 ? 0 : caps[(capcount - 1) * 2], capcount == 0 ? 0 : caps[(capcount * 2) - 1]) { _caps = caps; _capcount = capcount; } /* * True if the match was successful */ ////// public bool Success { get { return _capcount != 0; } } /* * The collection of all captures for this group */ ///Indicates whether the match is successful. ////// public CaptureCollection Captures { get { if (_capcoll == null) _capcoll = new CaptureCollection(this); return _capcoll; } } /* * Convert to a thread-safe object by precomputing cache contents */ ////// Returns a collection of all the captures matched by the capturing /// group, in innermost-leftmost-first order (or innermost-rightmost-first order if /// compiled with the "r" option). The collection may have zero or more items. /// ////// #if !SILVERLIGHT [HostProtection(Synchronization=true)] static public Group Synchronized(Group inner) { #else static internal Group Synchronized(Group inner) { #endif if (inner == null) throw new ArgumentNullException("inner"); // force Captures to be computed. CaptureCollection capcoll; Capture dummy; capcoll = inner.Captures; if (inner._capcount > 0) dummy = capcoll[0]; return inner; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //Returns /// a Group object equivalent to the one supplied that is safe to share between /// multiple threads. ///// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- // Group represents the substring or substrings that // are captured by a single capturing group after one // regular expression match. namespace System.Text.RegularExpressions { using System.Security.Permissions; ////// Group /// represents the results from a single capturing group. A capturing group can /// capture zero, one, or more strings in a single match because of quantifiers, so /// Group supplies a collection of Capture objects. /// #if !SILVERLIGHT [ Serializable() ] #endif public class Group : Capture { // the empty group object internal static Group _emptygroup = new Group(String.Empty, new int[0], 0); internal int[] _caps; internal int _capcount; internal CaptureCollection _capcoll; internal Group(String text, int[] caps, int capcount) : base(text, capcount == 0 ? 0 : caps[(capcount - 1) * 2], capcount == 0 ? 0 : caps[(capcount * 2) - 1]) { _caps = caps; _capcount = capcount; } /* * True if the match was successful */ ////// public bool Success { get { return _capcount != 0; } } /* * The collection of all captures for this group */ ///Indicates whether the match is successful. ////// public CaptureCollection Captures { get { if (_capcoll == null) _capcoll = new CaptureCollection(this); return _capcoll; } } /* * Convert to a thread-safe object by precomputing cache contents */ ////// Returns a collection of all the captures matched by the capturing /// group, in innermost-leftmost-first order (or innermost-rightmost-first order if /// compiled with the "r" option). The collection may have zero or more items. /// ////// #if !SILVERLIGHT [HostProtection(Synchronization=true)] static public Group Synchronized(Group inner) { #else static internal Group Synchronized(Group inner) { #endif if (inner == null) throw new ArgumentNullException("inner"); // force Captures to be computed. CaptureCollection capcoll; Capture dummy; capcoll = inner.Captures; if (inner._capcount > 0) dummy = capcoll[0]; return inner; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.Returns /// a Group object equivalent to the one supplied that is safe to share between /// multiple threads. ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- WindowsContainer.cs
- DataControlFieldHeaderCell.cs
- SelectingProviderEventArgs.cs
- SapiGrammar.cs
- QueryExpr.cs
- SecurityUtils.cs
- SmtpException.cs
- CssStyleCollection.cs
- SmiEventStream.cs
- EventListener.cs
- BooleanStorage.cs
- COSERVERINFO.cs
- ForEachDesigner.xaml.cs
- ZipIOModeEnforcingStream.cs
- TaskFormBase.cs
- EventHandlersStore.cs
- QueryOperationResponseOfT.cs
- SystemIPInterfaceProperties.cs
- smtppermission.cs
- ChildChangedEventArgs.cs
- PageCatalogPart.cs
- InvokeWebService.cs
- TimeSpan.cs
- InvokeBinder.cs
- GCHandleCookieTable.cs
- Interlocked.cs
- XmlSchemaIdentityConstraint.cs
- WebPartRestoreVerb.cs
- RegexStringValidator.cs
- WindowsListViewScroll.cs
- Variant.cs
- Cursor.cs
- ColumnResizeAdorner.cs
- PeerNameRegistration.cs
- ActivityMarkupSerializationProvider.cs
- DependencyObjectType.cs
- CollectionChangeEventArgs.cs
- BitmapEffectCollection.cs
- ReadOnlyDictionary.cs
- DataServiceHost.cs
- DynamicAttribute.cs
- XmlElementElementCollection.cs
- CustomPopupPlacement.cs
- CustomLineCap.cs
- SourceElementsCollection.cs
- SystemThemeKey.cs
- LinkClickEvent.cs
- Accessible.cs
- UiaCoreApi.cs
- Paragraph.cs
- TableSectionStyle.cs
- ProxyWebPartConnectionCollection.cs
- ReflectPropertyDescriptor.cs
- SqlReorderer.cs
- Int32Animation.cs
- DetailsViewModeEventArgs.cs
- ExternalException.cs
- SignatureDescription.cs
- XmlTypeAttribute.cs
- BitArray.cs
- ReliabilityContractAttribute.cs
- Tokenizer.cs
- RunInstallerAttribute.cs
- EndpointPerformanceCounters.cs
- Identifier.cs
- CheckBoxStandardAdapter.cs
- sqlstateclientmanager.cs
- CommandHelpers.cs
- ActivityInterfaces.cs
- Parsers.cs
- SmiTypedGetterSetter.cs
- XmlIncludeAttribute.cs
- TableItemProviderWrapper.cs
- HtmlInputImage.cs
- SHA256.cs
- ThemeableAttribute.cs
- ImmutablePropertyDescriptorGridEntry.cs
- AppDomainFactory.cs
- LoginCancelEventArgs.cs
- QilFunction.cs
- ComponentDispatcher.cs
- __ConsoleStream.cs
- AssemblyInfo.cs
- GenericTextProperties.cs
- SerialPinChanges.cs
- SEHException.cs
- WsdlBuildProvider.cs
- DiagnosticTraceRecords.cs
- ManagementDateTime.cs
- ConvertBinder.cs
- XmlBaseWriter.cs
- NamespaceInfo.cs
- ItemChangedEventArgs.cs
- DBBindings.cs
- TextDecorationCollectionConverter.cs
- QilParameter.cs
- GB18030Encoding.cs
- StrokeSerializer.cs
- IDispatchConstantAttribute.cs
- XhtmlBasicPhoneCallAdapter.cs